
Exploit proof-of-concept e analisi tecnica per una vulnerabilità di path traversal in WinRAR che consente l'esecuzione di codice tramite archivi appositamente realizzati con patching binario.
Nota: Repository in via di sviluppo. Questo progetto riceverà aggiornamenti futuri con analisi aggiuntive, script di analisi (non-exploit) e materiale per presentazioni. Nuove versioni verranno pubblicate non appena disponibili.
Questo repository documenta l'analisi, il processo di studio e la prova di concetto (PoC) per la vulnerabilità di Directory Traversal (CWE-35) in WinRAR (CVE-2025-8088).
La falla colpisce le versioni di WinRAR per Windows precedenti alla 7.13 ed è stata classificata con gravità Alta (Base Score 8.8).
Il successo della CVE-2025-8088 risiede nella semplicità dell'interazione richiesta alla vittima: l'esecuzione del codice viene innescata semplicemente estraendo un file dannoso.
L'exploit ha come principale obiettivo la cartella di avvio di Windows (AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\).
Questo schema è stato utilizzato da gruppi di minaccia come RomCom per installare backdoor che concedevano accesso completo ai computer compromessi.
Lo sviluppo di una prova di concetto robusta richiede uno studio approfondito delle strutture binarie del formato RAR e delle peculiarità del sistema operativo Windows.
La vulnerabilità viene sfruttata attraverso la manipolazione degli header del file RAR. Gli attaccanti non possono semplicemente rinominare un file; devono costringere WinRAR ad accettare un percorso dannoso, che viene memorizzato nella struttura del file.
File header e il Service header. Vengono modificati il campo Name length e il campo Name (che contiene il percorso) all'interno dell'header del file...\..\..\).struct di Python, usato per interpretare i byte come dati binari impacchettati.Lo studio ha rivelato che una grande sfida per lo sfruttamento era l'incertezza sulla directory esatta di estrazione (Desktop, Download, ecc.).
File.txt). Ogni file è configurato per tentare di attraversare un numero diverso di directory padre (esempio: ..\Startup\payload.bat, poi ..\..\Startup\payload.bat, fino a 20 livelli di profondità).Per incorporare il payload in modo furtivo, la ricerca utilizza una funzionalità esclusiva del file system NTFS di Windows: gli Alternate Data Streams (ADS).
RELATIVE_DROP_PATH, sono i motivi principali per cui la generazione dell'exploit richiede un ambiente Windows.La vulnerabilità CVE-2025-8088 è stata sfruttata attivamente (in the wild) ed è elencata nel catalogo KEV (Known Exploited Vulnerabilities) della CISA.
La difesa più critica è l'aggiornamento, poiché lo sfruttamento dipende da software obsoleto:
Analogia di Studio: Immagina il file RAR come un pacco postale. Il Path Traversal è come compilare l'indirizzo di consegna con comandi "torna al mittente" (
../) ripetuti. Lo studio tecnico ha comportato scoprire esattamente quale parte dell'etichetta del pacco (l'header RAR) doveva essere manomessa e quanti comandi "torna" sarebbero stati necessari (la strategia multi-profondità) per garantire che, non importa da dove partisse il corriere (WinRAR), il pacco venisse depositato nella cassaforte (la cartella Startup). La semplice azione di "accettare il pacco" (estrarre) garantisce l'infezione.