【发布时间】:2016-05-01 00:54:08
【问题描述】:
在我进行逆向工程的可执行文件中,我的D:\ drive 中有几个路径引用。但是,我没有连接D:\ drive。它是否有可能在可执行文件中创建一个临时存储站点?
比如有一个字符串:
D:\BuildAgent\...\bin\...\fileIWantToSee.jpg
IDA 甚至认为符号信息在 D 盘中,并试图寻找它,但无济于事。这些字符串中有许多文件引用实例,其中许多都以:
Line: **LINENUMBER**
我应该去哪里寻找这个存储的位置?谢谢!
编辑:可以在特定部分中吗?
【问题讨论】:
-
也可能是这些是对开发人员机器上的路径的引用(未使用,仅用于调试目的),特别是如果它们在可执行文件中而不是在运行时生成的内存。如果我们确实在谈论运行时设置路径,并且它是像 Eugene 的答案中建议的模拟存储,那么您可以只扫描内存中出现在 JPEG 文件中的字符串(例如,它们通常包含
JFIF或Exif,以字节FF D8开始并以字节FF D9结束),或者您可以编写一个调用 GetOpenFileName 并使用 [...] 导出任何选定文件的 DLL -
[...] 您自己的代码将内容写入该路径之外的另一个文件,并将 DLL 注入进程。假设它是像 Eugene 所说的系统,这应该允许您将文件“复制”到隐藏区域之外。
-
实际上,既然我再次阅读了您的问题,很可能这些是断言的一部分,其中包含程序作者机器上源文件的文件路径,而不是您的 i> 和完成断言的代码行的行号。因此,您无法访问这些文件,它们根本不存在于您的计算机上。说,有问题的文件的文件扩展名真的是
.jpg吗?或者像.pas或.cpp这样的东西?这将支持我的理论。
标签: storage reverse-engineering temporary unpack ida