
Una semplice PoC per CVE-2022-46169, nota anche come Cacti Unauthenticated Command Injection, una vulnerabilità che consente a un utente non autenticato di eseguire codice arbitrario su un server che esegue Cacti versioni dalla 1.2.17 alla 1.2.22.
Questa è una semplice adattamento PoC dello scenario Cacti di Vulnhub. Puoi verificarlo qui
Cacti è un framework robusto ed estensibile per il monitoraggio operativo e la gestione dei guasti per utenti in tutto il mondo. Una vulnerabilità di iniezione di comandi consente a un utente non autenticato di eseguire codice arbitrario su un server che esegue Cacti dalla versione 1.2.17 alla 1.2.22, se una specifica origine dati è stata selezionata per qualsiasi dispositivo monitorato.
Riferimenti:
Esegui il seguente comando per avviare un server Cacti 1.2.22:
# Compile environment
docker compose build
# Run environment
docker compose up -d
Dopo l'avvio del server, vedrai la pagina di login all'indirizzo http://localhost:8080.
Quindi accedi come admin/admin, segui le istruzioni per inizializzare l'applicazione. In realtà, basta cliccare il pulsante "Avanti" più e più volte finché non vedi la pagina di successo.
Prima di poter sfruttare questa vulnerabilità, devi aggiungere un nuovo "Grafico" perché l'iniezione di comandi non si verifica nel tipo di grafico predefinito:

Seleziona il tipo di grafico "Device - Uptime" e clicca il pulsante "Crea":

Dopo aver completato l'inizializzazione di cui sopra, assumerai il ruolo di attaccante. Basta usare il seguente script come mostrato per inviare una richiesta al server Cacti per innescare l'attacco di iniezione di comandi:

Sebbene nessun risultato del comando sia presente nella risposta, puoi verificare che /tmp/test.txt è stato creato con successo.
