CTF-REV-martricks #elf#angr

2018-08-25  本文已影响0人  Watanuki

martricks——flag{Everyth1n_th4t_kill5_m3_m4kes_m3_fee1_aliv3}

分析

  1. 拿到题目首先file一下发现是linux的64位elf文件,用IDA打开。


    拿到未知文件先file一下
  2. shift+f12看到了关键词,感觉要是送分题了!(虽然不是送给我)

    IDA打开先shift+12一下
  3. 然后双击再双击,F5,发现是需要校验什么等于什么然后就给flag的连串复杂但普通的操作。


    然后就F5一下

    大意是一开始有个v15=1,后来经过一系列循环(),都要满足什么等于什么……


这种时候一边看代码(或者直接放弃不看)的同时一遍就可以上angr了!注意一下find和avoid的地址不是最开始找到的那个字符串所在地址(谢谢钟sir!)而是跳转的地址,可以双击也可以按X快速查看内存地址

image.png

完整代码:

>>> from angr import *
>>> state = proj.factory.entry_state()
>>> result = proj.factory.simgr(state)
>>> result.explore(find = 0x400A84, avoid = 0x400A90)
<SimulationManager with 1 found, 49 avoid>
>>> print result.found[0].posix.dumps(0)
flag{Everyth1n_th4t_kill5_m3_m4kes_m3_fee1_aliv3}

总结

其实今天的最大挑战在于装好angr,尝试过好多曲折的道路,windows下没装成功,然后把系统升级成win10再装了kali也不成,后来心一横不管别的直接pip install angr了()
emm……实在鼓不起勇气来写代码逆向,作业我都不想留

上一篇下一篇

猜你喜欢

热点阅读