
Einführung in die Ausnutzung von ELF-Binärdateien.
Rainfall ist eine ISO-Herausforderung, die etwas komplexer ist als Snow Crash. Du wirst tief in das Reverse Engineering eintauchen müssen, lernen, einen Code zu rekonstruieren, und ihn verstehen, um Fehler zu erkennen. Wirst du die letzte Ebene erreichen?
Rainfall ist ein Projekt aus dem Bereich Cybersicherheit der 42, das auf Snow Crash folgt, aber dessen Ziel es ist, Dateien im ELF-Format als C-Executables auszunutzen.
Verschiedene Techniken müssen verwendet werden, um die Passwörter für jede Ebene zu erhalten:
Gute Kenntnisse der Assemblersprache (x86 und x86-64) und von GDB sind erforderlich, um die disassemblierten C-Executables zu verstehen.
Wir haben dieses Projekt im März 2025 mit einer Punktzahl von 125/100 bestätigt.
Um mit diesem Projekt zu beginnen, musst du zuerst die von 42 bereitgestellte ISO herunterladen und installieren.
Dann musst du eine virtuelle Maschine mit der ISO verwenden. Wenn du VirtualBox verwendest, musst du die Einstellung Attached to im Reiter Network auf Host-only Adapter setzen.
Du kannst dich mit SSH mit der ersten Ebene verbinden. Die IP-Adresse wird auf dem Startbildschirm der VM angezeigt und der Port ist 4242. Die Anmeldedaten für die erste Ebene sind level0, sowohl für Benutzername als auch Passwort.
ssh [email protected] -p 4242
Sobald du angemeldet bist, musst du einen Weg finden, die .pass-Datei des Benutzerkontos der nächsten Ebene zu lesen. Sie befindet sich im Home-Verzeichnis jedes Benutzers.
level0@RainFall:~$ ./level0 $(exploit)
$ cat /home/user/level1/.pass
?????????????????????
$ exit
level0@RainFall:~$ su level1
Password:
level1@RainFall:~$ _