1

我有从 C 源代码编译的二进制可执行文件,我知道它使用了一些 UNIX 系统环境变量。不幸的是,我没有文档,反编译/逆向工程非常困难。

有没有办法找到应用程序在运行时尝试读取哪些环境变量?

我的意思是,如果 Cgetenv读取一些文件以获取变量值或进行系统调用,这是可能的。那么,我能做到吗?

4

2 回答 2

1

可以使用调试器,在 上设置断点getenv,然后检查函数参数。即使没有调试信息,这也是可能的(尽管更困难,因为它需要了解调用约定)。

于 2017-03-28T08:59:57.333 回答
1

strings(1)可能会帮助您识别环境变量的名称。– Blagovest Buyukliev

于 2017-03-28T08:56:44.863 回答