首页
社区
课程
招聘
[原创] 第四题 神秘信号
发表于: 2024-8-21 20:08 4148

[原创] 第四题 神秘信号

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 被大帅锅编辑 ,原因:
收藏
免费 3
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//