cmpy2.exe逆向py
参考
Solving a PyInstaller-compiled crackme
https://hshrzd.wordpress.com/2018/01/26/solving-a-pyinstaller-compiled-crackme/
(上面链接的pyc版本较老,pyc头部缺少8个字节,而下面的cmpy2里面的pyc则缺12字节)
在windows操作系统下运行cmpy2.exe,要求输出’you are right!'代表成功。
第1步 - 解开exe
使用适当的工具可以轻松打开EXE包装。在这种情况下,我使用了用Python编写的PyInstallerExtractor。
第2步 - 反编译pyc
生成的输出存储在与输入可执行文件的名称对应的目录中。我们可以看到提取了多个模块,按照参考网站上的示例,我们找到了一个名为crackme2的文件:
crackme2是一个pyc删除了幻数的文件,因此我们可以从pyc我们在提取的集合中找到的其他文件中复制此部分,即
让我们将它粘贴在crackme2的开头:
在此步骤之后,我们准备将其保存为crackmw2.pyc和反编译:
可能因为解密工具Easy Python Decompiler解密的版本比较老,没有解密成功,所以我们选择在线解密。
我们看到了,cmpy2.exe文件的py源代码,之后便可以知道用户名和密码了。