ebCTF2013 RE

Author Avatar
kabeor 9月 04, 2018

ebCTF2013 RE

今天在看以前的笔记时看到了这篇,觉得有意思,就放上来了

放入IDA中分析,先看下流程:

找到主函数,空格
可以看到具体的一些步骤和相互之间的关系


大体就是这样
点击view->open subviews->strings 可以看到分析出的字符串

这就是程序运行时的流程,可以看出,我们需要投掷3-1-3-3-7,这几乎是不可能的,所以我们需要改动跳转的判断条件。

F5键可以打开插件HexRays 查看伪代码

可以看出这里的判断条件
于是结合流程图我们可以看出,应该修改的是每一部分最后一个跳转,此语句本来是jnz跳转,我们只需把它修改成jz即可

通过edit->patch program->change byte 修改机器码,把原来开头的75改为74即可

最后运行一下发现每次成功后flag都会一闪而过

于是我们应该把最后的跳转到retn的jmp给nop掉
大功告成

From https://kabeor.github.io/ebCTF2013 RE/ bye

This blog is under a CC BY-NC-SA 4.0 Unported License
本文链接:https://kabeor.github.io/ebCTF2013 RE/