Reversing ELF

Task 1 Crackme1

Let's start with a basic warmup, can you run the binary?

What is the flag?

chmod +x crackme1
binwalk crackme1
./crackme1

Task 2 Crackme2

Find the super-secret password! and use it to obtain the flag

What is the super secret password ?

chmod +x crackme2
binwalk crackme2
strings crackme2| grep pass
./crackme2 super_secret_password

What is the flag ?

Task 3 Crackme3

Use basic reverse engineering skills to obtain the flag

What is the flag?

chmod +x crackme3
binwalk crackme3
strings crackme2| more
echo "ZjByX3kwdXJfNWVjMG5kX2xlNTVvbl91bmJhc2U2NF80bGxfN2gzXzdoMW5nNQ==" |base64 -d

Task 4 Crackme4

Analyze and find the password for the binary?

What is the password ?

radare2 -d ./crackme4 password
[0x7faf1ff3c090]> aa
[0x7faf1ff3c090]> afl
[0x7faf1ff3c090]> pdf @sym.get_pwd
[0x7faf1ff3c090]> db 0x00400678
[0x7faf1ff3c090]> dc
[0x00400678]> pdf @sym.get_pwd
[0x00400678]> px @rbp-0x4

Task 5 Crackme5

What will be the input of the file to get output Good game ?

What is the input ?

chmod +x crackme5   
./crackme5
radare2 -d ./crackme5
aaa
afl
pdf @main
db 0x0040082c
dc
px @rsi

Task 6 Crackme6

Analyze the binary for the easy password

What is the password ?

radare2 -d ./crackme6
aaa
afl

pdf @main
pdf @sym.compare_pwd
pdf @sym.my_secure_test

db 0x004006e1

0x31
0x33
0x33
0x37
0x5f
0x70
0x77
0x64

Task 7 Crackme7

Analyze the binary to get the flag

What is the flag ?

Ghidra
python
print(int('0x7a69',16))

Task 8 Crackme8

Analyze the binary and obtain the flag

What is the flag ?

python
print(int('-0x35010ff3',16))
-889262067

Last updated

Was this helpful?