反编译python 生成的exe源码

反编译python 生成的exe源码

记录反编译exe工具使用

  • 工具准备
    – pyinstxtractor.py
    – uncompyle6
    – sublime Text(或者其他的二进制编辑工具)

一、解包(exe)
①:先把下载的pyinstxtractor.py文件和需要进行反编译的exe文件放在一个目录中

②:然后使用终端(cmd)执行:python3 pyinstxtractor.py main.exe
这样会得到上图中的带有”_extracted”后缀的文件夹
执行后应该得到下图:

进入到文件夹中,找到没有pyc的文件,我的是main文件,添加.pyc后缀,添加完成后如下图:

分别把这俩个文件使用编辑工具打开,打开后得到一堆二进制,注意看俩个文件的区别,struct比main多一行,这时需要把struct第一行复制到main第一行保存。

二、解码反编译
前期工作都准备完成了,现在开始解析,有的人说直接去什么在线解析或者在线解码之类的就行了,我试了有的地方全是乱码或解析错误,如下图:

推荐使用uncompyle6进行解析
①:pip3 install uncompyle6安装uncompyle6
安装完成后,使用uncompyle6可以进行反编译.pyc后缀的文件了
②:uncompyle6 main.pyc > test.py (这里的test.py就是重命名后的解析文件,可以自己重命名)
执行后会得到你想要的文件

注:如果是mac 直接运行uncompyle6 会提示:zsh: command not found:uncompyle6

终端切换 cd /Users/*****/Library/Python/2.7/bin/目录下
运行 uncompyle6 +需要反编译pyc的绝对路径即可:

uncompyle6 /Users/****/Downloads/dds/main.exe_extracted/main.pyc > /Users/****/PycharmProjects/shares_exe/test.py

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
上一篇 2023年6月15日
下一篇 2023年6月15日

相关推荐