首页
社区
课程
招聘
[原创]看雪CTF2018 - PWN_wow WriteUp
发表于: 2018-6-21 22:09 2709

[原创]看雪CTF2018 - PWN_wow WriteUp

2018-6-21 22:09
2709
       本题需要将代码进行6次动态异或解密,程序才能正常执行。按照惯例,先checksec一下,如图1,解题思路如下:


图 1
        程序运行话,触发异常崩溃。将程序载入IDA后,发现代码加密,对加密之前的正常代码分析如图2,主要完成了将代码段权限设置为RWX,同时读入6字节,然后将6字节作为密钥对代码进行异或解密。

图 2
根据解密代码的分析,可知密钥长度为1,其中,一个判断条件是当前字节为0x90时,如果前一字节为0xFB,不能结束循环。因此,猜测解密后的代码一定包含0xFB90。
       下一步,将加密部分提取出来,对其进行密钥暴力破解,如图3所示,

图 3
获取密钥候选值后,可逐个尝试,发现第一个密钥字节为e,第一阶段解密后如图4,

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//