python打包的exe解包为.py文件
使用的工具:
pyinstxtractor.py 解压工具(将exe文件解压为一个文件夹)
python包:uncompyle6,pyc反编译工具包
winhex或010Editor等其他二进制查看修改工具
0x00 工具安装
uncompyle6安装:
方法一:
pip安装
pip3 install uncompyle6 |
方法二:
使用pycharm安装,在pycharm的设置里依次点击 python解释器 —> '+'
在搜索框内填入要安装的包后点击安装即可
pyinstxtractor.py工具获取:
在网页:https://sourceforge.net/projects/pyinstallerextractor/中下载获取
winhex工具下载:
链接:https://pan.baidu.com/s/15xVANHw6zwS89YCXcDHoEg |
0x01 exe包解压
首先使用pyinstxtractor.py进行拆包
python3 pyinstxtractor.py 要拆包的文件名 |
执行完后会出现一个 原文件名+_extracted的文件夹,
0x02 复原头文件
在新生成的文件夹中存在exe文件同名且无后缀的文件与struct,用winhex打开两个文件
将struct文件开头的16个字节(也有说是8个字节,反正将文本为pyi0的部分都恢复回去QAQ)复制粘贴到无后缀的文件头中
修改后保存,将无后缀的文件添加上.pyc的后缀
0x03 逆向.pyc文件
使用uncompyle包进行逆向
uncompyle6 文件名.pyc > 文件名.py |
拆包完成,可以打开.py文件查看代码辣!