
CVE-2025-6218 è una vulnerabilità di directory traversal in WinRAR che permette a un utente malintenzionato di posizionare file al di fuori della directory di estrazione prevista quando un utente estrae un appositamente creato
CVE-2025-6218 è una vulnerabilità di directory traversal in WinRAR che consente a un attaccante di posizionare file al di fuori della directory di estrazione prevista quando un utente estrae un archivio .rar appositamente creato. Sfruttando questa falla, un attaccante può depositare file dannosi in posizioni sensibili, potenzialmente portando all'esecuzione di codice in remoto (RCE) se il file viene eseguito dal sistema o dall'utente.
---
WinRAR.exe --version).Le vulnerabilità di directory traversal consentono agli attaccanti di manipolare i percorsi dei file per scrivere file in posizioni non previste. Nel contesto di WinRAR, ciò significa che un file destinato a essere estratto in C:\Temp potrebbe invece essere posizionato in una directory sensibile come la cartella di avvio di Windows (C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup). Se un eseguibile o uno script dannoso viene posizionato in tale posizione, potrebbe essere eseguito automaticamente, concedendo all'attaccante il controllo sul sistema della vittima.
Un attaccante può:
.bat) nella cartella di avvio per eseguire codice all'avvio del sistema.C:\Windows\System32 per interrompere la funzionalità del sistema o aumentare i privilegi.La vulnerabilità deriva dall'incapacità di WinRAR di convalidare e sanificare correttamente i percorsi dei file memorizzati all'interno di un archivio .rar. Durante l'estrazione dei file, WinRAR si fida dei metadati del percorso del file nell'archivio senza controllare sufficientemente sequenze di path traversal come ..\ o ../../. Ciò consente a un attaccante di creare un archivio in cui il percorso di un file punta al di fuori della directory di estrazione prevista.
..\..\..\ Ingannano il Processo di Estrazione..\ in un percorso di file indica al sistema di salire di un livello di directory. Concatenando più sequenze ..\ (ad esempio, ..\..\..\..\..), un attaccante può navigare dalla directory di estrazione (ad esempio, C:\Temp\Test) alla radice dell'unità (C:\) e poi a qualsiasi posizione desiderata, come C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup vengono eseguiti automaticamente quando un utente effettua l'accesso. Un .bat o .exe dannoso qui può eseguire comandi arbitrari.C:\Windows\System32 può compromettere l'integrità del sistema o abilitare l'escalation dei privilegi.Estrazione Prevista (Sicura):
- Utente estrae l'archivio in: C:\Temp\Test
- L'archivio contiene il file: payload.bat
- Risultato atteso: C:\Temp\Test\payload.bat
Estrazione Effettiva (Sfruttata):
- Utente estrae l'archivio in: C:\Temp\Test
- L'archivio contiene il file con percorso: ..\..\..\..\..\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
- Risultato effettivo: C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Questa sezione fornisce istruzioni passo-passo per riprodurre manualmente la vulnerabilità CVE-2025-6218 in un ambiente di laboratorio sicuro e isolato utilizzando una macchina virtuale (VM) senza connettività di rete. L'obiettivo è creare un archivio .rar che posizioni un file .bat innocuo nella cartella di avvio di Windows, che avvia la Calcolatrice (calc.exe) all'accesso dell'utente.
Prepara una Cartella di Test:
exploit_test (ad esempio, C:\exploit_test).Crea un Payload Semplice:
@echo off
start calc.exe
payload.bat in C:\exploit_test.Crea la Struttura di Cartelle per il Path Traversal:
C:\exploit_test, crea una struttura di cartelle che rispecchi il percorso desiderato:
C:\exploit_test\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
<username> con il nome dell'utente target sulla VM (ad esempio, absholi7ly).payload.bat nella cartella :
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat. Se è presente, lo sfruttamento del directory traversal è riuscito.payload.bat con Blocco note per verificarne il contenuto:
@echo off
start calc.exe
payload.bat nella cartella di avvio e seleziona Proprietà.C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
C:\payload.bat o in una sottocartella come C:\Users\username\AppData\Roaming\...), lo sfruttamento non ha funzionato come previsto.username.payload.bat nella cartella di avvio per verificare che funzioni.Per i ricercatori che desiderano semplificare il processo, i passaggi manuali descritti sopra possono essere automatizzati utilizzando uno script Python.
StartupC:\exploit_test\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Crea l'Archivio RAR Dannoso Usando WinRAR:
C:\exploit_test.Users (che contiene l'intero percorso fino a payload.bat).exploit.rar (ad esempio, C:\exploit_test\exploit.rar).exploit.rar in WinRAR. Dovresti vedere:
Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Trasferisci l'Archivio sulla VM:
exploit.rar in una cartella condivisa o su un'unità USB accessibile dalla VM.exploit.rar nella radice dell'unità C:\:
C:\exploit.rar
Estrai l'Archivio sulla VM:
C:\.exploit.rar e seleziona Estrai qui.payload.bat in:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Verifica lo Sfruttamento:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat esiste in questa cartella.Testa l'Esecuzione del Payload:
username.calc.exe) dovrebbe avviarsi automaticamente.payload.bat nella cartella di avvio per confermare che apre la Calcolatrice.