通过脚本/命令行在Linux下替换PE EXE文件中的资源

4 投票
1 回答
2528 浏览
提问于 2025-04-20 20:05

我正在寻找一种方法来替换位于PE EXE文件中.rsrc目录下的资源“文件”的内容(新的资源内容可能大小不同),这个操作是在Linux命令行下进行的。

有一个很棒的基于Python的项目叫做pefilehttps://github.com/erocarrera/pefile)。

这里还有一个使用示例页面(https://github.com/erocarrera/pefile/blob/wiki/UsageExamples.md#introduction),但是我找不到一个示例脚本来展示如何替换资源文件的内容。

任何帮助都将不胜感激。

谢谢,Dmitry。

1 个回答

2

Python有一个叫做pe-tools的工具包,里面有一个文档写得很好的命令叫做peresed,可以用来做一些特定的操作。

使用peresed --apply RES这个命令,你可以“应用一个自定义的.res文件,并覆盖任何匹配的资源条目”。简单来说,就是把你指定的资源文件里的内容替换掉原来的内容。

你还可以编辑特定的版本信息字段,或者把资源条目的内容设置为某个文件的内容,比如:

peresed --set-version "FileDescription=My very own file"

这条命令的意思是把文件描述设置为“我自己的文件”。

撰写回答