python2反编译部分
文章目录
- 1、所需环境
- 2、确认打包工具(没成功)
- 3、 解包.exe文件(以PyInstaller为例) - useful【***总的来说这一步对我有用】
- 4、定位关键文件 - useful
- 5、 修复.pyc文件头(关键步骤!)- maybe-ig(没有成功)
- 6、反编译.pyc文件 - (反正我没成功)
1、所需环境
- python运行环境
- git(用来下载所需工具)
2、确认打包工具(没成功)
strings.exe your_executable.exe | findstr “PyInstaller py2exe cx_Freeze”
3、 解包.exe文件(以PyInstaller为例) - useful【***总的来说这一步对我有用】
1、下载pyinstxtractor
git clone https://github.com/extremecoders-re/pyinstxtractor
2、解包
python pyinstxtractor.py “C:\path\to\your_executable.exe”
有用(利用HxD软件读取.pyz文件,可以可能到对应的源码<2.x版本的>,不过会有中文乱码):
4、定位关键文件 - useful
1、主程序文件
your_executable.pyc/pyz
2、依赖模块文件 —— 【当做没额外的】【没成功】
解压PYZ-00.pyz文件(直接拖到7-Zip窗口即可解压)
5、 修复.pyc文件头(关键步骤!)- maybe-ig(没有成功)
据说Windows解包后的.pyc文件可能丢失头信息
但是我没有成功修复过,因为看起来直接是正确的了,可能不同版本的不同。
6、反编译.pyc文件 - (反正我没成功)
方法1:使用uncompyle6(支持Python ≤3.8)
方法2:使用pycdc(支持Python 3.9+)