
CVE-2022-31147 è una vulnerabilità di path traversal in matthiasmullie/minify. Questa guida aiuta i team di sicurezza a testare la lettura arbitraria di file su Linux e Windows utilizzando Python e curl. Tratta la generazione automatica di payload, la validazione manuale e le pratiche sicure per la valutazione delle vulnerabilità.
Questa guida fornisce metodologie complete per testare CVE-2022-31147, una vulnerabilità critica di path traversal che interessa la libreria matthiasmullie/minify, ampiamente utilizzata. La vulnerabilità consente agli aggressori di sfruttare una sanificazione insufficiente degli input nell'endpoint minify, consentendo potenzialmente operazioni di lettura arbitraria di file sia su server Linux che Windows. Questa guida è pensata per professionisti della sicurezza, penetration tester e ricercatori che desiderano valutare l'esposizione delle applicazioni web a questa minaccia.
Il cuore della guida è uno script proof-of-concept automatizzato in Python, che genera e testa sistematicamente un'ampia gamma di payload di traversal. Questi payload utilizzano diverse profondità di directory traversal (../), molteplici schemi di codifica (come URL encoding e double encoding) e variazioni dell'endpoint (incluse estensioni finte e parametri di query) per bypassare i meccanismi comuni di routing e filtraggio. Sfruttando queste tecniche, lo script massimizza la probabilità di rilevare configurazioni vulnerabili, anche in ambienti protetti da firewall applicativi di base o logiche di routing personalizzate.
L'accuratezza del rilevamento è ulteriormente migliorata da euristiche integrate che analizzano il contenuto delle risposte alla ricerca di marcatori di file noti. Per i target Linux, lo script ricerca pattern tipici di /etc/passwd o di altri file sensibili, mentre per i sistemi Windows cerca indicatori all'interno di file come win.ini. Questo approccio garantisce che lo sfruttamento riuscito venga identificato in modo affidabile, riducendo al minimo i falsi positivi e semplificando il processo di validazione.
Oltre al test automatizzato, la guida illustra tecniche di validazione manuale tramite curl, consentendo ai professionisti di creare e inviare richieste personalizzate per analisi mirate o per verificare in modo indipendente i risultati. L'importanza di test sicuri e autorizzati viene sottolineata in tutta la guida, inclusa la necessità di condurre valutazioni esclusivamente su sistemi per i quali è stata concessa un'esplicita autorizzazione.
La guida è progettata per supportare sia una validazione rapida sia un'analisi approfondita, accogliendo file di destinazione personalizzati e strategie avanzate di bypass. Può essere integrata in flussi di lavoro più ampi di valutazione delle vulnerabilità, fornendo informazioni utili per la remediation e la gestione del rischio. Seguendo le metodologie presentate, i team di sicurezza possono identificare, validare e affrontare efficacemente le esposizioni legate a CVE-2022-31147 nei propri ambienti, rafforzando la postura di sicurezza complessiva delle proprie applicazioni web.
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --linux --file /etc/passwd
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --windows --file C:\Windows\win.ini
Creare un file innocuo sul server, quindi tentare di leggerlo:
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --file /var/www/test.txt
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../windows/win.ini"
curl -i "https://yourdomain.tld/cdn/minify/%2e%2e/../%2e%2e/../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd.css"
https://yourdomain.tld/cdn/minify con l'URL effettivo del tuo target.