从谷歌浏览器离线安装程序中提取文件

逆向工程 静态分析 聚乙烯
2021-06-26 23:06:53

我正在尝试从Google Chrome 离线安装程序中提取文件作为逆向工程练习

所以我尝试提取安装程序 PE 中的数据。我尝试了pestudio,它向我展示了两个大型嵌入式资源,但是,pestudio 无法转储它们。使用 7-zip 解压缩 PE 会显示一个名为~102.

但是,7zip 无法从~102文件中提取任何内容使用十六进制编辑器查看此文件表明它是一个 tar 存档,其中附加了大约 20 个字节的附加信息。但是,删除这 20 个字节并不能使其可提取。

如何从二进制文件中提取文件?

我是逆向工程的完全菜鸟,所以请纠正我的错误而不是贬低我的问题。如果有人能告诉我一个可以从 PE 可执行文件中提取此类数据的工具,我也将不胜感激(而不是我为此非常有问题地使用 7-zip,这对于大量可执行文件也失败了)。

2个回答

我通过在线 EXE 检查器运行安装程序,它告诉我102资源包含LZMA 压缩数据愚蠢的是,我关闭了那个窗口来查找“LZMA”是什么。我忘记记下这个特定工具的网址了,现在找不到了!太可惜了,因为这个提示至关重要

然后我通过PEdump.me运行它,它允许单独下载它。为了解压 LZMA 压缩,我使用了 Stuffit Expander(适用于 OS X),但您可能也可以使用 7-Zip——您可能需要添加文件扩展名.lzma才能使其工作。

这给了我一个类似 TAR 的文件,其中包含更多的可执行文件。我的当地人tar无法进一步解压它(可能是标准的一些变体tar)。

TAR 文件格式是将多个文件连接成一个的包装器;它的标题包含原始文件名和它的大小,以及其他数据。TAR不对生成的文件应用压缩,因此您只需要一个好的十六进制编辑器来手动将其拆分为单独的程序。


.. 我为此目的使用 7-zip 非常有问题,这对于大量可执行文件也失败了..

能够显示Windows 可执行文件PE 部分对于一般的压缩/解压缩程序来说是一个相当不常见的功能......也就是说:我没有发现 7-zip 处理 PE 可执行文件的错误。它把它们分成不同的部分,什么也不做。

可以用PE Studio之类的工具来查看资源(确定不能解压吗?好像是这么基本的功能);但是在提取它们之后,您就靠自己了。没有压缩或以其他方式混淆资源的“标准”方法;有些程序甚至可能包含自定义代码来提取自己的数据。

识别资源的格式然后简化为更一般的“识别文件格式”,这本身就是一个非常广泛的主题。

如果您的目标真的只是从脱机包中恢复安装程序文件,您可能可以省去麻烦。

奇怪的是,资源被即时提取到适合我%TEMP%的 Windows 机器上目录中C:\Users\Troy\AppData\Local\Temp

在 Unix/Linux/OSX 上,文件可能位于/tmp.

这些文件可能仅在安装程序执行时可用。