码迷,mamicode.com
首页 > 其他好文 > 详细

AliCTF2014题目解析之<reverse-200>

时间:2015-03-11 21:20:17      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

reverse-200

技术分享
工具:procmon、immunity dbg、idapro


首先通过procmon观察ch2.exe
技术分享
发现ch2.exe需要读取flag.txt,可以分析出ch2.exe是要读取flag.txt内容,加密后写到flag.crpyt
目录下创建一个flag.txt,写入aaaaaaaaaaaa,再次使用procmon观察
技术分享
根据ch2.exe的api调用过程,开始动态调试
首先
bp ReadFile
直接断在读取flag.txt的过程,继续执行到用户代码
技术分享
用IDA pro打开ch2.exe,到地址0x4022B8
技术分享
IDA自动识别出了所处的函数_read
技术分享
显然只是个读文件内容的函数,有可能是C语言的标准库。结合动态调试往外退,依次是如下函数
_filbuf
fread
最后跟踪到0x40121E,这里IDA pro没能识别出指令,还有很多标红的地方,根据一些书中所说,应该是使用了反汇编机制了
技术分享
按《恶意代码分析实战》一书中所说的,写一段IDA python脚本,从0x401000开始将干扰码都改为NOP指令,改完后发现0x40121E下面指令序列变为
技术分享
随后调用了函数 sub_401000,查看函数sub_401000
技术分享
这里简单分析一下,改一下变量名,可以看出就是加密函数了,逻辑很简单,限于篇幅,就不继续分析了。
另:看了wuyun上一篇帖子的解法是不通过逆向分析,直接构造可见字符集交给程序加密,得到映射表,阿里大牛原意可能是让同学们用这种方法,不过使用逆向方法也不失为一次很好的锻炼机会。





AliCTF2014题目解析之<reverse-200>

标签:

原文地址:http://www.cnblogs.com/Wrong-Side/p/4330843.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!