快捷键

从 Exeinfo PE 的识别结果来看,文件 re4 是 PYO 格式(Python 优化编译后的字节码文件 ),不是常规的 PE 可执行程序(Windows EXE )。由 Python 脚本编译生成(python -O script.py 命令会生成 .pyo ),比 .pyc 更小、加载更快,但可读性低。

这样提示文件打开是空白的
这是正确的

==要把文件后缀改成pyc==
1 | import base64 |
代码分析
这个程序定义了一个encode函数,对输入字符串进行处理:
- 每个字符的 ASCII 值与 32 进行异或操作
- 结果加 16
- 将处理后的字符组合成新字符串
- 对新字符串进行 Base64 编码
最后将编码结果与预定义的correct值进行比较。我们需要逆向这个过程来找到原始的 flag。
逆向过程
要还原 flag,我们需要反向执行上述步骤:
- 对 Base64 编码进行解码
- 每个字符减 16
- 与 32 进行异或操作
下面是逆向的 Python 代码:
1 | import base64 |
nctf{d3c0mpil1n9_PyC}
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Rhea's Blog!
评论
