Il 15 luglio 2026 la Zero Day Initiative ha reso pubblica la vulnerabilità CVE-2026-14266, un heap-based buffer overflow nel decoder XZ di 7-Zip che consente esecuzione di codice arbitrario. La fix era già disponibile dal 25 giugno nella versione 26.02, venti giorni prima della disclosure coordinata. La novità non è la criticità tecnica del flaw — valutato 7.0 High, non Critical — ma il paradosso della "patch silenziosa": un processo di disclosure coordinata perfettamente riuscito che, per come è distribuito il software, non protegge chi dovrebbe.
- CVE-2026-14266 è un heap-based buffer overflow nel decoder XZ di 7-Zip con CVSS 7.0: attacco locale, alta complessità, interazione utente richiesta
- Il bug risiede nella funzione MixCoder_Code in C/XzDec.c, dove il decoder passava la lunghezza totale del buffer ad ogni iterazione invece dello spazio residuo
- La patch in 7-Zip 26.02, rilasciata il 25 giugno 2026, sottrae i byte già scritti e interrompe il processo se il totale supera l'allocazione
- 7-Zip non dispone di meccanismo di aggiornamento automatico: la maggior parte delle installazioni resta esposta nonostante la fix disponibile
Il meccanismo del bug: un errore di conteggio in cascata
Il difetto è localizzato nella funzione MixCoder_Code del file C/XzDec.c. Quando un flusso XZ viene processato attraverso un filtro di decompressione, il decoder riceveva la dimensione totale del buffer di output ad ogni chiamata, anziché la porzione effettivamente rimanente dopo le scritture precedenti.
In termini concreti: se il buffer è di 4 KB e nella prima iterazione ne sono stati scritti 2 KB, la seconda iterazione vedeva ancora 4 KB disponibili, non 2. Quando l'output filtrato eccedeva lo spazio residuo reale, la scrittura continuava oltre i limiti dell'heap allocation, con conseguente buffer overflow. La correzione implementa un accumulatore dei byte già scritti: la versione 26.02 sottrae il running total e interrompe l'elaborazione se il valore supera la dimensione del buffer, come ha verificato The Hacker News attraverso la review del codice sorgente.
Il codice vulnerabile è presente almeno dalla versione 21.07, risalente al 2021. Rescana elenca tra le versioni affette: 21.07, 22.00, 22.01, 23.00, 23.01, 24.00, 24.01, 25.00, 25.01, 26.00 e 26.01. La presenza del codice non implica automaticamente che tutte queste versioni siano esploitabili con la stessa affidabilità, ma il perimetro di esposizione è esteso e in parte ignoto.
"ZDI rates the flaw 7.0, or High, not the Critical several write-ups reached for." — The Hacker News
Perché il CVSS 7.0 High non è "Critical" e cosa cambia
La valutazione ufficiale della ZDI assegna alla vulnerabilità un punteggio di 7.0, corrispondente alla severità High. Il vettore CVSS 3.0 completo è AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H: attacco locale, alta complessità, privilegi non richiesti, interazione utente necessaria, impatto riservato al processo vulnerabile con disponibilità, integrità e riservatezza tutte compromesse.
La distinzione tra High e Critical non è semantica. Il vettore locale (AV:L) e l'alta complessità (AC:H) significano che l'aggressore deve già disporre di condizioni specifiche: tipicamente, convincere la vittima a scaricare e aprire un archivio XZ malevolo. Su Windows, inoltre, 7-Zip gira con token standard-user filtrato anche quando l'utente dispone di privilegi amministrativi, circoscrivendo i privilegi ottenibili al contesto del processo corrente. Alcune testate hanno classificato il flaw come Critical; il dato ufficiale ZDI contraddice questa sovrastima.
Al 20 luglio 2026, The Hacker News non ha rilevato proof-of-concept pubblici né report credibili di exploitation in the wild per CVE-2026-14266. La finestra temporale di rischio, tuttavia, resta aperta per le installazioni non aggiornate.
La NTFS "più rumorosa" che ha eclissato il flaw XZ
Nello stesso periodo, la GitHub Security Lab ha divulgato GHSL-2026-140, un heap buffer overflow nel parser NTFS di 7-Zip con CVSS 8.8. Questa vulnerabilità correlata — tracciata come CVE-2026-48095 — ha ricevuto maggiore visibilità mediatica grazie alla pubblicazione di un PoC funzionante che dimostra l'hijack di una vtable.
Il contrasto tra le due storie illumina un problema sistemico. Chi ha aggiornato a 7-Zip 26.01 — versione che corregge la NTFS ma non l'XZ — potrebbe aver assunto un falso senso di sicurezza, ritenendo di aver "sistemato" le vulnerabilità recenti. Il contesto più ampio, documentato da GHSL-2026-115–122, mostra vulnerabilità di memory safety in parallelo sui formati 7z, SquashFS, UDF, UEFI, WIM e Ar, suggerendo pattern ricorrenti nella codebase piuttosto che isolati incidenti.
Il ricercatore JarLob ha pubblicato per la NTFS un exploit dettagliato che sfrutta una distanza heap di circa 304 byte tra _inBuf e l'oggetto CInStream. Nessun equivalente pubblico esiste al momento per il decoder XZ.
Cosa fare adesso
Le azioni prioritarie derivano direttamente dai fatti verificati nel dossier:
- Verificare la versione installata di 7-Zip e aggiornare manualmente alla 26.02 o successiva dal sito ufficiale, dato che il software non implementa aggiornamenti automatici
- Controllare eventuali installazioni "set-and-forget" in ambienti enterprise, dove 7-Zip è spesso distribuito come utility di archiviazione standard senza processi di patch management dedicati
- Valutare l'integrazione in prodotti di terze parti che incorporano librerie o componenti di 7-Zip, poiché il dossier non specifica quali necessitino patch indipendenti
- Trattare con cautela archivi XZ inattesi provenienti da email o download, riconoscendo che il vettore d'attacco richiede interazione utente tramite apertura del file
La lezione della disclosure coordinata che non coordina gli utenti
La timeline ufficiale è tecnicamente impeccabile: il ricercatore Landon Peng di Lunbun LLC ha segnalato il bug il 5 giugno 2026, il vendor ha rilasciato la fix il 25 giugno, la ZDI ha pubblicato l'advisory il 15 luglio. Venti giorni di anticipo rappresentano un esempio di coordinated disclosure efficace nella comunicazione vendor-sicurezza.
Tuttavia, il modello di distribuzione di 7-Zip trasforma questo successo relativo in problema assoluto. L'assenza di canale di aggiornamento automatico, la mancanza di notifica in-app e la dipendenza dal download manuale dal sito ufficiale creano una discontinuità tra disponibilità tecnica della patch e protezione effettiva della base installata. Per software ubiquo come 7-Zip — presente in ambienti enterprise, integrato in tool di terze parti, spesso invisibile nella lista asset — questa discontinuità è il rischio dominante.
Il dossier non specifica quanti utenti siano effettivamente protetti dalla versione 26.02, né documenta misure correttive alternative per le installazioni non aggiornabili in tempi brevi. L'impatto su piattaforme non-Windows in termini di modello dei privilegi non è quantificato. Questi limiti lasciano aperti interrogativi sulla reale estensione del perimetro di esposizione, al di là della certezza tecnica del meccanismo della vulnerabilità.
Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.
Fonti
- https://thehackernews.com/2026/07/new-7-zip-vulnerability-could-let.html
- https://securityaffairs.com/195688/security/critical-7-zip-flaw-allows-code-execution-by-opening-crafted-xz-compressed-files-update-it-now.html
- https://www.rescana.com/post/cve-2026-14266-critical-7-zip-xz-archive-decoder-vulnerability-enables-remote-code-execution-patch-in-26-02
- https://www.zerodayinitiative.com/advisories/ZDI-26-444/
- https://securitylab.github.com/advisories/GHSL-2026-115_GHSL-2026-122_7-zip/
- https://www.cve.org/CVERecord?id=CVE-2026-48095
- https://securitylab.github.com/advisories/GHSL-2026-140_7-Zip/