题目入口:
https://www.root-me.org/en/Challenges/Cracking/ELF-0-protection
https://www.root-me.org/en/Challenges/Cracking/ELF-x86-Basic
crack-bin:
http://challenge01.root-me.org/cracking/ch1/ch1.zip
http://challenge01.root-me.org/cracking/ch2/ch2.zip
工具radare:https://www.radare.org/r/down.html
windows版本:
http://radare.mikelloc.com/get/3.2.1/radare2_installer-msvc_32-3.2.1.exe
http://radare.mikelloc.com/get/3.2.1/radare2_installer-msvc_64-3.2.1.exe
Linux版本:
git clone https://github.com/radare/radare2
cd radare2
sys/install.sh # just run this script to update r2 from git
安装后radare后,使用rabin2 -z命令来搜索bin文件中的字符串。
# rabin2 -z ch1.bin
[Strings]
Num Paddr Vaddr Len Size Section Type String
000 0x00000810 0x08048810 10 11 (.rodata) ascii %s : "%s"\n
001 0x0000081b 0x0804881b 17 18 (.rodata) ascii Allocating memory
002 0x0000082d 0x0804882d 19 20 (.rodata) ascii Reallocating memory
003 0x00000841 0x08048841 9 10 (.rodata) ascii 123456789 //密码为123456789
004 0x0000084c 0x0804884c 60 61 (.rodata) ascii ############################################################
005 0x0000088c 0x0804888c 60 61 (.rodata) ascii ## Bienvennue dans ce challenge de cracking ##
006 0x000008cc 0x080488cc 61 62 (.rodata) ascii ############################################################\n
007 0x0000090c 0x0804890c 34 35 (.rodata) ascii Veuillez entrer le mot de passe :
008 0x00000930 0x08048930 60 61 (.rodata) ascii Bien joue, vous pouvez valider l'epreuve avec le pass : %s!\n
009 0x00000970 0x08048970 32 33 (.rodata) ascii Dommage, essaye encore une fois.
# rabin2 -z ch2.bin
Num Paddr Vaddr Len Size Section Type String
000 0x0005eae8 0x080a6ae8 10 11 (.rodata) ascii %s : "%s"\n
001 0x0005eaf3 0x080a6af3 17 18 (.rodata) ascii Allocating memory
002 0x0005eb05 0x080a6b05 19 20 (.rodata) ascii Reallocating memory
003 0x0005eb19 0x080a6b19 4 5 (.rodata) ascii john
004 0x0005eb1e 0x080a6b1e 10 11 (.rodata) ascii the ripper
005 0x0005eb2c 0x080a6b2c 60 61 (.rodata) ascii ############################################################
006 0x0005eb6c 0x080a6b6c 60 61 (.rodata) ascii ## Bienvennue dans ce challenge de cracking ##
007 0x0005ebac 0x080a6bac 61 62 (.rodata) ascii ############################################################\n
008 0x0005ebea 0x080a6bea 10 11 (.rodata) ascii username:
009 0x0005ebf5 0x080a6bf5 10 11 (.rodata) ascii password:
010 0x0005ec00 0x080a6c00 9 10 (.rodata) ascii 987654321 //密码为987654321
011 0x0005ec0c 0x080a6c0c 69 70 (.rodata) ascii Bien joue, vous pouvez valider l'epreuve avec le mot de passe : %s !\n
012 0x0005ec52 0x080a6c52 12 13 (.rodata) ascii Bad password
013 0x0005ec5f 0x080a6c5f 12 13 (.rodata) ascii Bad username
014 0x0005ec6c 0x080a6c6c 22 23 (.rodata) ascii FATAL: kernel too old\n
015 0x0005ec84 0x080a6c84 39 40 (.rodata) ascii FATAL: cannot determine kernel version\n
016 0x0005ecac 0x080a6cac 9 10 (.rodata) ascii /dev/null
................