つれづれなる備忘録

CTF関連の事やその他諸々

ADCTF2014 [04] easyone

reversing来ましたねー

あんまし得意ではないんですよ(汗

This is very easy crackme. easyone

どうやら64bitのelfのようですね

objdumpで見てみると、Flagを生成してるらしき部分がscanfの後に続きます

0x0000000000400625 <+56>: callq 0x4004f0 <__isoc99_scanf@plt> 0x000000000040062a <+61>: movb $0x37,-0x2a(%rbp) 0x000000000040062e <+65>: movb $0x33,-0x1e(%rbp) 0x0000000000400632 <+69>: movb $0x31,-0x25(%rbp) 0x0000000000400636 <+73>: movb $0x48,-0x29(%rbp) 0x000000000040063a <+77>: movb $0x37,-0x22(%rbp) 0x000000000040063e <+81>: movb $0x4f,-0x18(%rbp) 0x0000000000400642 <+85>: movb $0x35,-0x1c(%rbp) 以下略

 

生成が終わったところでブレイクポイントを仕掛け、そのままスタックを覗いてやればいい感じですね

(gdb) b *0x4006a2 Breakpoint 1 at 0x4006a2 (gdb) r Starting program: /home/yutaro/programs/CTF/adctf/easyone password: aaaa Breakpoint 1, 0x00000000004006a2 in main () (gdb) x/s $rbp-0x30 0x7fffffffded0: "ADCTF_7H15_15_7oO_345y_FOR_M3"

 

FLAG: ADCTF_7H15_15_7oO_345y_FOR_M3