-
-
[原创]看雪CTF2018 - PWN_wow WriteUp
-
发表于:
2018-6-21 22:09
2858
-
[原创]看雪CTF2018 - PWN_wow WriteUp
本题需要将代码进行6次动态异或解密,程序才能正常执行。按照惯例,先checksec一下,如图1,解题思路如下:
图 1
程序运行话,触发异常崩溃。将程序载入IDA后,发现代码加密,对加密之前的正常代码分析如图2,主要完成了将代码段权限设置为RWX,同时读入6字节,然后将6字节作为密钥对代码进行异或解密。
图 2
根据解密代码的分析,可知密钥长度为1,其中,一个判断条件是当前字节为0x90时,如果前一字节为0xFB,不能结束循环。因此,猜测解密后的代码一定包含0xFB90。
下一步,将加密部分提取出来,对其进行密钥暴力破解,如图3所示,
图 3
获取密钥候选值后,可逐个尝试,发现第一个密钥字节为e,第一阶段解密后如图4,
[注意]看雪招聘,专注安全领域的专业人才平台!