CVE-2025-65345 – Attraversamento autenticato del percorso tramite funzione Zip che porta alla divulgazione del filesystem in laravel-file-manager v3.3.1
🧭 Panoramica
Una vulnerabilità di attraversamento delle directory autenticata in laravel-file-manager v3.3.1 e versioni precedenti consente agli aggressori con accesso all'interfaccia del file manager di utilizzare la funzione zip/archiviazione per creare archivi contenenti file e directory al di fuori dell'ambito previsto a causa di una convalida del percorso impropria.
🧱 Componente Affetto
- Progetto:
laravel-file-manager
- Componente: Funzione zip/archiviazione
- Versione affetta: v3.3.1 e precedenti
🎯 Vettori di Attacco
- Caricare o selezionare una cartella/file nell'interfaccia grafica del file manager.
- Manipolare il payload della richiesta ZIP per includere sequenze di attraversamento delle directory come ../../../../../../../../../var/www o il file passwd
- Attivare la creazione dello ZIP, facendo sì che il backend risolva ricorsivamente i percorsi al di fuori della directory di archiviazione consentita.
- Scaricare lo ZIP generato, che ora contiene file sensibili da posizioni arbitrarie sul server.
💥 Impatto
- Divulgazione di File Arbitrari: Gli aggressori possono recuperare file sensibili come configurazioni di ambiente (.env), chiavi SSH, file di configurazione, file di log e segreti dell'applicazione.
- Escalation dei Privilegi: La divulgazione di credenziali sensibili può aiutare ad espandere l'accesso oltre il livello applicativo.
- Rischio di Sfruttamento Laterale: L'accesso ai dati a livello di filesystem può esporre segreti che consentono l'accesso al database, catene RCE o la compromissione completa del servizio.
- https://www.tenable.com/cve/CVE-2025-65345
🛡️ Mitigazione Raccomandata
- Implementare la convalida del percorso canonico: Normalizzare i percorsi dei file richiesti e imporre una restrizione rigorosa alla directory di archiviazione designata del progetto.
- Rifiutare qualsiasi percorso contenente sequenze di attraversamento (../, %2e%2e/, attraversamento nidificato).
- Applicare una logica di whitelist lato server: Consentire la creazione di ZIP solo da directory note e esplicitamente consentite.
- Aggiornare a una versione corretta non appena il fornitore rilascia una patch che risolve questa debolezza di attraversamento del percorso.
🙏 Crediti
Scoperto e segnalato da: Chindanai Klabtung, Chayawat Jeamprasertboon, Thanakorn Boontem, Theethat Thamwasin