Wir haben die Lösungsdurchführung der Level 01–19 der Nebula-Exploit-Übungen behandelt, mit denen Sie Ihre Fähigkeiten zur Linux-Berechtigungsausweitung üben können. Dazu gehört die Ausnutzung von SUID-Bit-Set-Binärdateien, Cron-Jobs, Umgebungsvariablen und falsch konfigurierten Dateiberechtigungen. Python-anfällige Module wie Pickle-Modul, Pfaderweiterung, gemeinsam genutzte Bibliotheken und Codierungsfehler.
Holen Sie sich OSCP-Studiennotizen
Der komplette praktische Kurs zum Penetrationstest von Webanwendungen
Höhepunkte | Ebenenaufschlüsselung
Niveau00
Für diese Stufe müssen Sie finden ein Programm zum Festlegen einer Benutzer-ID, das als „flag00“-Konto ausgeführt wird. Sie können dies auch finden, indem Sie sorgfältig in den Top-Level-Verzeichnissen in / nach verdächtig aussehenden Verzeichnissen suchen.
Alternativ können Sie sich auch die Find-Manpage ansehen.
Ebene01
Im folgenden Programm gibt es eine Sicherheitslücke, die die Ausführung beliebiger Programme ermöglicht. Können Sie diese finden?
Ebene02
Im folgenden Programm gibt es eine Sicherheitslücke, die die Ausführung beliebiger Programme ermöglicht. Können Sie diese finden?
Ebene03
Überprüfen Sie das Home-Verzeichnis von Flagge03 und notieren Sie sich die Dateien dort.
Es gibt eine Crontab, die alle paar Minuten aufgerufen wird.
Level04
Für dieses Level müssen Sie das lesen Zeichen Datei, aber der Code beschränkt die lesbaren Dateien. Finden Sie einen Weg, dies zu umgehen 🙂
Level05
Überprüf den Flagge05 Home-Verzeichnis. Sie suchen nach schwachen Verzeichnisberechtigungen
Level06
Der Flagge06 Die Kontoanmeldeinformationen stammten von einem älteren Unix-System.
Stufe07
Der Flagge07 Der Benutzer schrieb sein allererstes Perl-Programm, mit dem er Hosts anpingen konnte, um zu sehen, ob sie vom Webserver aus erreichbar waren.
Level08
Weltweit lesbare Dateien schlagen erneut zu. Überprüfen Sie, was dieser Benutzer gemacht hat, und melden Sie sich damit an flag08 Konto.
Stufe09
Es gibt einen C-Setuid-Wrapper für anfälligen PHP-Code.
Stufe 10
Die Setuid-Binärdatei unter /home/flag10/flag10 Binary lädt jede angegebene Datei hoch, sofern sie die Anforderungen erfüllt Zugang() Systemaufruf.
Stufe 11
Der /home/flag11/flag11 Binär verarbeitet die Standardeingabe und führt einen Shell-Befehl aus.
Es gibt zwei Möglichkeiten, dieses Level abzuschließen. Vielleicht möchten Sie auch beides machen 🙂
Stufe 12
Es gibt einen Backdoor-Prozess, der Port 50001 überwacht.
In der exemplarischen Vorgehensweise verwendete Techniken zur Eskalation von Linux-Berechtigungen
Wir haben eine Kombination aus Dateiverarbeitung und Bearbeitung verwendet, um die Anmeldeinformationen aus der Kennwortdatei unter /etc/passwd abzurufen oder zu extrahieren.
Wir analysieren einen in der Sprache C geschriebenen Code. Er liest eine Token-Datei basierend auf den Berechtigungen des aktuellen Benutzers, die wir umgehen müssen.
Grundsätzlich umgehen wir diese Einschränkung unter Linux, indem wir einen symbolischen Link zur betreffenden Datei erstellen.
Video-Komplettlösung | P1
Video-Komplettlösung | Platz 2