TWCTF 2017-Rev Rev Rev-writeup
爆破。warmup题
题目提供了一个64位elf文件。用IDA打开后按f5没反应。gdb打开,进行动态调试。
程序的基本流程就是,将你的输入读入,然后做个加密处理,比较看是否正确。在0x0804866D处有一个strcmp,我们在这里下个断点。
然后运行:
借助peda插件的帮忙,可以看到我们输入了aaaa
后,经过加密变成了yyyy
,并且与内存0x8048870处的数据比较。我们把这段内存提取出来看看:
所以我们可以利用输入与断点结合的方式,获取每个可显示字符的加密后的结果,然后根据0x8048870处的数据反推出flag。
|
|
根据上面的调试结果,可以得出如下的对应关系:
然后接下来根据调试得到大写字母和数字和符号的对应关系。
最后根据对应关系得到flag: