-
-
[原创]CTF2017 第十四题 半盲道人cm 解题报告
-
发表于:
2017-7-1 02:56
5017
-
[原创]CTF2017 第十四题 半盲道人cm 解题报告
因比较忙,后来抽空才补的 writeup,渡。 大的 writeup,已经分析的非常彻底了,所以本文就从虚拟机伪码生成开始阐述不同的部分
先上解码代码
会生成非常长的代码,在进行找出规律、正则替换、手动美化后,成为这样
这里要用到逻辑代数的几个推导
那么上面的伪码还能化简
当时我的想法是认为位数过大(96),移动变换复杂(4个异或),要检测的量很大(4k),我的想法是只检测结果为 0 的部分(只有400多个),并且,从上面的最简式看,最后是全或,那么只有满足,[60] = [61] = [62] = 0,[59] & [65] & [83] = 0 这 2个判定,结果才能是 0
渡。大的 z3 是神器啊,我手动的方法差距1w倍,因为程序输入是可显字符,那么一开始就隐含了每字节最高位是 0 的条件,附求解代码(自己想的算法)
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!