VNCTF2021-Reverse-wp

VNCTF2021-Reverse-wp

0x1 notsudoku

查看基本信息,发现upx壳,脱壳(upx -d)

image-20210413053005139

image-20210413053047491

放到ida里看看,发现并没有明文字符串,而是一堆关于py的信息

image-20210413053232312

可以猜测是用py打包的

所以尝试解包(使用最新版的pyinstxtractor.py,可以自动生成pyc文件,不用手工改magic value,这个2.pyc就是我们需要的

image-20210413053535763

image-20210413053444736

但是经过查看和struct中的magic value并不相同,所以手动替换一下,使用py3.7和uncompyle6可以正常解出源码,py3.9会报错,py2也会报错,easy那个软件也会报错

image-20210413054918399

image-20210413054757278

开始研究源码:

image-20210413055029915

替换掉一些日文:

image-20210413055104065

image-20210413055129674

image-20210413055212442

image-20210413055149840

通过已给的数字提示以及题目,判断这是一个五阶幻方,然后要求我们按1的顺序输入每个字所在的横纵坐标

根据此图我们就可以推出输入的字符串

image-20210413055310499

编写脚本,得到flag:e3a912c1e911ad82544af0c3d753f44f

image-20210413061037076