ダウンロードしたファイルはLinuxの32bit実行ファイルです。Take sha256 of string obtained.
$ file debug32debug32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=46b87dea3b50c74ec8cde885ccc9a4d9e5e260f3, stripped
objdumpコマンドで逆アセンブルし動作を解析します。
$ objdump -s -d debug32 > aaa.txt
以下の箇所にフラグらしきものが埋め込まれています。文字に直すと、i_has_debugger_skillになります。
80484af: 68 f0 85 04 08 push $0x80485f0 #Printing flag80484b4: e8 a7 fe ff ff call 8048360 <puts@plt>80484b9: 83 c4 10 add $0x10,%esp80484bc: c7 45 e0 96 f5 86 16 movl $0x1686f596,-0x20(%ebp) #i_ha80484c3: c7 45 e4 37 f5 46 56 movl $0x5646f537,-0x1c(%ebp) #s_de80484ca: c7 45 e8 26 57 76 76 movl $0x76765726,-0x18(%ebp) #bugg80484d1: c7 45 ec 56 27 f5 37 movl $0x37f52756,-0x14(%ebp) #er_s80484d8: c7 45 f0 b6 96 c6 c6 movl $0xc6c696b6,-0x10(%ebp) #kill
これをSHA256ハッシュ化します。
$ echo -n i_has_debugger_skill | sha256sum42ed5a0616bfd7b09de17393f83934e29591527037b946927ddef7c8e29be4b9 -
フラグは、
42ed5a0616bfd7b09de17393f83934e29591527037b946927ddef7c8e29be4b9です。









