X-MAS CTF 2019: Exploatare & Reverse Engineering de binare (Write-Ups)
- mai puțin de 1 minute de citit
- 2 exemple de cod
- 5 imagini
Disponibil și în English
Pe această pagină
Salut,
Iată write-up-urile mele pentru X-MAS CTF 2019 organizat de .
Reversing: Santa’s crackme
Santa’s crackme se rezolvă ușor cu Ghidra. Tot ce trebuie să faci este să deschizi binarul, să citești codul și să folosești scriptul XOR Memory din Ghidra.
Flag-ul este extras din flag_matrix și aplicat XOR cu 3.
Selectează datele flag-ului, fă clic dreapta pe Script Manager și rulează scriptul XorMemory
Obținem flag-ul, cu excepția primului caracter
Reversing: X-MAS: Lapland Mission
Deoarece acesta este un joc Unity, îl putem modifica cu ușurință folosind dnSpy.
Deschide X-MAS Lapland MissionX-MAS_DataManagedAssembly-CSharp.dll, navighează la clasa PlayerControl și înlocuiește metoda Die() cu un simplu return: fă clic pe edit method și compilează.
Joacă jocul, ucide toți robotii și obține flag-ul.

Exploitation: SN0WVERFL0W
Pentru a obține flag-ul trebuie să suprascriem adresa de return a funcției main în timpul buffer overflow-ului.
Dimensiunea buffer-ului este de 10 bytes, adresa frame-ului are 8 bytes, iar adresa de return are tot 8 bytes. Putem folosi Python pentru a crea un fișier cu input-ul pe care trebuie să-l transmitem binarului:
python -c “print(‘a’10+’a’8+’x56x11x40x00x00x00x00x00’)” > in.txt
Am suprascris adresa de return a lui main cu adresa funcției care afișează flag-ul. Poți găsi această adresă inspectând binarul în Ghidra.
