CVE-2026-48095
GHSL-2026-140_7-Zip: 7-Zip presenta un overflow del buffer heap tramite la sotto-allocazione del buffer del flusso compresso NTFS
- Pubblicato
- 5 giu 2026
- Aggiornato
- 8 giu 2026
- Assegnazione CNA
- GitHub_M
- Evidenza osservata
- 17 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:HBasso · prossimi 30 giorni
- Percentile
- 64,1%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
7-Zip è un archiviatore di file con un elevato rapporto di compressione. Le versioni 26.00 e precedenti contengono una vulnerabilità di heap buffer overflow causata da una sotto-allocazione nel buffer del flusso compresso NTFS (shift UB di GetCuSize), che potenzialmente consente agli attaccanti di causare esecuzione di codice arbitrario o crash dell'applicazione. CInStream::GetCuSize() nell'handler NTFS calcola la dimensione del buffer dell'unità di compressione come (UInt32)1 << (BlockSizeLog + CompressionUnit), e un'immagine appositamente predisposta con ClusterSizeLog >= 28 e CompressionUnit == 4 porta l'esponente a 32, che è un comportamento indefinito e collassa su x86/x64, quindi _inBuf viene allocato come 1 byte. ReadStream_FALSE scrive quindi fino a 256 MB di dati controllati dall'attaccante in quel buffer di 1 byte in iterazioni da 64 KB e, poiché l'oggetto CInStream si trova solo 304 byte dopo _inBuf, il suo puntatore alla vtable viene sovrascritto e la successiva chiamata inviata ottiene un dirottamento della vtable. Nelle build a 32 bit l'overflow viene raggiunto incondizionatamente; su 64 bit richiede che l'allocazione parallela di 8 GB di _outBuf abbia successo, altrimenti fallisce chiudendosi in denial of service. L'handler NTFS è abilitato per impostazione predefinita nella 7z.dll standard e, tramite il fallback basato su firma che corrisponde a "NTFS " all'offset 3, aprirà un'immagine appositamente predisposta indipendentemente dall'estensione del file durante l'estrazione o il test. La versione 26.01 corregge il problema.
Fonti
1CVE-2026-48095
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.