[广东省大学生攻防大赛 2022]pyre

下载附件拿到一个 exe 文件

使用 exeinfo 检测程序特征,识别为 PyInstaller 打包的 Python 可执行文件

使用 pyinstxtractor 对 附件给的exe 程序进行解包,提取出其中的 .pyc 字节码文件

复制代码
python pyinstxtractor.py pyre.exe

弄完操作后,就可以得到一个文件夹

打开后,发现了一个 1.pyc 直接就是一眼丁真,这就是我们的目标。

使用 uncompyle6 对 .pyc 字节码进行反编译,还原为 Python 源码:

复制代码
 uncompyle6 1.pyc > 1.py

搞定之后就能得到一个 1.py

打开进去可以看到加密算法

观察校验逻辑可知,每个字符满足:

ord(a[i]) * 33 % 179 == c[i]

由于输入字符范围有限(ASCII),可以通过枚举可打印字符进行反推。

python 复制代码
c = [144, 163, 158, 177, 121, 39, 58, 58, 91, 111, 25, 158, 72, 53, 152,
     78, 171, 12, 53, 105, 45, 12, 12, 53, 12, 171, 111, 91, 53,
     152, 105, 45, 152, 144, 39, 171, 45, 91, 78, 45, 158, 8]
mod = 179
flag_ord = []

for target in c:
    for ch in range(32,127):
        if (ch * 33) % mod == target:
            flag_ord.append(ch)
            break
print(flag_ord)

flag_str = ""

for i in range(len(flag_ord)):
    flag_str += chr(flag_ord[i])
print(flag_str)

运行后就能得到 flag

python 复制代码
flag{2889e7a3-0d6b-4cbb-b6e9-04c0f26c9dca}
相关推荐
时代新威powertime6 小时前
时代新威·视角|云计算平台中数据隐私保护机制的研究
网络安全·云计算
dk_tjy9 小时前
迪康加密系统技术解析:驱动层透明加密的机制、策略与工程权衡
运维·安全·网络安全·终端安全管理·数据防泄漏
学逆向的13 小时前
C 可变量参数
c语言·开发语言·网络安全
孙克旭_14 小时前
文件包含漏洞
网络安全
其实防守也摸鱼16 小时前
Cylab在线靶场——挑战图书馆初学者指南
服务器·前端·数据库·chrome·安全·网络安全·靶场
m0_715674431 天前
可视化易用·低误报率·跨区域部署:知源-AI数据分类分级系统在金融行业的落地实践
网络·安全·网络安全
愤怒火龙果1 天前
AI攻防 AIRT03-RAG Exploitation & Vector Database Attacks
数据库·人工智能·网络安全
严谨的麻辣烫1 天前
静态代理 IP 的出口一致性如何验证?Python 请求检测与异常排查
开发语言·python·http·网络安全
YFJ_mily1 天前
【10-12月优质学术会议合集】会议覆盖人工智能、大数据、高端装备、软件与网络安全 、计算机视觉技术等热门方向
算法·安全·web安全·网络安全·软件·rdlink研发家
墨云安全1 天前
系统安全检测方案怎么写?从资产清点到复测闭环的技术框架
安全·网络安全·渗透测试·系统安全