Šta se desilo?

Pronađena je kritična ranjivost prekoračenja heap memorije u 7-Zip verziji 26.00 koja omogućava napadačima da izvršavaju proizvoljni kod kroz manipulaciju vtable pokazivača. Ranjivost se nalazi u NTFS handler-u arhivator alata, a eksploatacija se vrši kreiranjem posebno pripremljene NTFS slike koja koristi nedoslednost u izračunavanju veličine kompresivnog bloka.

Koga pogađa?

Svi korisnici 7-Zip alata su potencijalno ugroženi, bez obzira da li koriste 32-bitnu ili 64-bitnu verziju. Rizik je posebno visokim za korisnike koji redovno otvaraju arhivske datoteke ili disk slike iz nepouzdanih izvora. Organizacije koje koriste 7-Zip kao deo svojih sistemskih alata za obradu podataka takođe su u opasnosti.

Kako se zaštititi?

  • Odmah ažurirajte 7-Zip na ispravljenu verziju čim postane dostupna
  • Izbegavajte otvaranje arhivskih datoteka i disk slika od nepouzdanih izvora
  • Koristite sigurne alternative za otvaranje .7z, .zip, .rar i ostalih arhivskih formata ako je moguće
  • Pazite na datoteke bez poznatih ekstenzija ili sa neočekivanim ekstenzijama
  • Pratite zvanične objave 7-Zip tima za informacije o zakrpi

Tehnički detalji

Ranjivost je katalogizirana kao CVE-2026-48095 sa CVSS skorom 8.8 (Visoki rizik). Greška se nalazi u funkciji CInStream::GetCuSize() u datoteci NtfsHandler.cpp. Problem nastaje jer 32-bitna shift operacija - (UInt32)1 << (BlockSizeLog + CompressionUnit) - generiše undefined behavior kada je ClusterSizeLog >= 28 i CompressionUnit == 4. Na x86 arhitekturi ovo dovodi do alokacije od samo 1 bajta umesto potrebnih 256 MB. Dalje čitanje memorije preskače u heap i prebrisava vtable pokazivač objekta CInStream-a, što omogućava potpunu kontrolu toka izvršavanja. Veoma opasna karakteristika ove ranjivosti je što NTFS handler koristi fallback detekciju koja se poklanja sa "NTFS " signaturom na bajtu 3, što znači da napadač može maskirati arhivu sa bilo kojom ekstenzijom ili bez nje kako bi pokrenuo vulnerabuilan kod. Ranjivost je klasifikovana kao CWE-787 (Out-of-Bounds Write) i CWE-190 (Integer Overflow).

Preporuka Sajber Radara

Ova ranjivost predstavlja ozbiljna pretnja jer nema ograničenja za formate datoteka i zahteva samo otvaranje posebno pripremljene datoteke. Korisnici moraju sa prioritetom izvršiti ažuriranje čim se zakrpa pušta u javnost i biti oprezni pri otvaranju bilo kojih arhivskih datoteka tokom perioda do primene zakrpe.