-
-
[原创]看雪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期)
赞赏
他的文章
- [原创]初入好望角WriteUp 2822
- [原创]流浪者WriteUp 2951
- [原创]看雪CTF.TSRC 2018 团队赛 - 半加器Writeup 2761
- [原创]看雪CTF.TSRC 2018 团队赛 - 初世纪 2003
- [原创]第十五题 智能设备WriteUp 6557
看原图
赞赏
雪币:
留言: