-
-
[原创] 第四题 神秘信号
-
发表于: 2024-8-21 20:08 4148
-
程序是python打包的exe,重点是识别它的版本,不然解压报错,版本号可以在python3.dll,编译日期也在里面,可以发现它版本是3.8.10,编译日期是2021
所以可以推断是官方的解释器
搜一搜网上说的那套东西可以把程序解压出来,重点是main.pyc和base64.pyc(为什么会发现这个,后续会讲)
用uncompyle6反编译main.pyc会报错,学习了半天加上猜测应该是compile了字节码在里面,要解决这个问题估计得改uncompyle6,估计前路漫漫,没得时间弄
采用笨蛋方式,下载python3.8.10的源码进行编译,在解释器里面插入日志,解释器位于ceval.c中,在比较的opcode中插入日志
打印出来日志如下:
可以看到最后比较的是
猜测是魔改的base64
再次修改源码,添加赋值opcode的监视
打印出来日志如下:
发现这个
猜测是魔改base64的table,通过搜索在base64.pyc发现这个字符串
其实到这就可以通过python调用exe的方式获输入输出进行穷举,奈何搞了一天输入输出老是有问题。
年龄大脑子笨,猜不出来答案,无奈只能硬啃。
把它的所有模块打印出来和正常的对比
发现多了个a
主动调用,发现是个code object,这是个什么鬼,百度看了下是complie的字节码
打印出来是这个样子
可以看到有异或操作
再次修改源码
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2024-8-21 22:30
被大帅锅编辑
,原因:
赞赏记录
参与人
雪币
留言
时间
一笑人间万事
感谢你的贡献,论坛因你而更加精彩!
2024-11-13 04:12
mb_twxozogd
你的分享对大家帮助很大,非常感谢!
2024-8-27 23:10
mb_wvlcywyp
谢谢你的细致分析,受益匪浅!
2024-8-25 21:25
赞赏
他的文章
看原图
赞赏
雪币:
留言: