Skip to content

Latest commit

 

History

History
 
 

added_protection

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

added protection:reversing:200pts

This binary has some e^tra added protection on the advanced 64bit shellcode
Files: added_protection
added_protection

Solution

ファイルが渡されるので実行するが、以下のようになるだけである。

$ ./added_protection
size of code: 130
Can u find the flag?
                   E�

gdbで見るとループしているようだ。
眺めているとrdxレジスタにUTなる文字が入っているのを見つけることができた。
その場所が0x8001217だったのでブレークポイントを張り、ループを回す。
rdxの値は以下のように変化していた(一部出力は省略)。

$ gdb ./added_protection
gdb-peda$ start
gdb-peda$ b *0x8001217
gdb-peda$ c
gdb-peda$ c
gdb-peda$ c
gdb-peda$ c
gdb-peda$ c
gdb-peda$ p $rdx
$1 = 0x44b8
gdb-peda$ c
gdb-peda$ p $rdx
$2 = 0x4355
gdb-peda$ c
gdb-peda$ p $rdx
$3 = 0x4654
gdb-peda$ c
gdb-peda$ p $rdx
$4 = 0x617b
~~~

エンディアンを調整し、まとめると以下になる。

0x
4883
ec64
4889
b844
5543
5446
7b61
6449
b976
346e
6365
6445
6e49
ba63
7279
7074
3364
5349
bb68
656c
6c43
6f64
6549
bc7d
4361

Hex to ASCII Text Converterにかけると以下になる。

H�ìdH�¸DUCTF{adI¹v4ncedEnIºcrypt3dSI»hellCodeI¼}Ca

不要な文字を取り除くとflagとなる。

DUCTF{adv4ncedEncrypt3dShellCode}