Blackfort Technology
IT-Security · Fachbeitrag27. Mai 2026·Christian Gebhardt

7-Zip CVE-2026-48095: Kritische RCE-Lücke geschlossen

7-Zip 26.00 enthält kritische Schwachstelle CVE-2026-48095 mit CVSS 8.8. Heap-Overflow ermöglicht Remote Code Execution. Update auf 26.01 verfügbar.

Blackfort auf LinkedIn folgen

Sicherheitsvorfälle, technische Analysen und Einblicke aus der Praxis — direkt in Ihrem LinkedIn-Feed.

Jetzt folgen →
Abstrakte Darstellung einer Sicherheitslücke in Archivierungssoftware mit sich auflösenden Datenströmen

Überblick: Heap-Overflow im NTFS-Handler

Am 22. Mai 2026 hat das GitHub Security Lab das Advisory GHSL-2026-140 zu einer kritischen Schwachstelle in 7-Zip veröffentlicht. CVE-2026-48095 beschreibt einen heap-basierten Pufferüberlauf im NTFS-Archive-Handler von 7-Zip 26.00, der laut Advisory durch eine fehlerhafte Pufferberechnung in der Funktion CInStream::GetCuSize() ausgelöst wird. Der CVSS-3.1-Score liegt bei 8.8 (Hoch) – die Lücke ermöglicht Remote Code Execution durch das bloße Öffnen einer manipulierten Datei.

Kritische Eckdaten

CVE-ID: CVE-2026-48095

CVSS 3.1: 8.8 (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H)

CWE: CWE-787 (Out-of-bounds Write), CWE-190 (Integer Overflow)

Betroffen: 7-Zip 26.00 (und potenziell frühere Versionen)

Gefixt: 7-Zip 26.01 (veröffentlicht am 27. April 2026)

Public Disclosure: 22. Mai 2026 (GHSL-2026-140)

PoC-Status: Funktionsfähiger Proof-of-Concept öffentlich verfügbar

Entdeckt wurde die Lücke von Jaroslav Lobačevski (GHSL-Team-Mitglied „@JarLob“). In ihrer Mitteilung erklärt das GitHub Security Lab, dass eine speziell präparierte NTFS-Image-Datei dazu führt, dass im Code-Pfad ein Schiebeoperator mit Exponent 32 ausgeführt wird. Das löst Undefined Behavior in C++ aus und reserviert nur 1 Byte statt mehrerer Hundert Megabyte. In diesen 1-Byte-Puffer schreibt 7-Zip anschließend bis zu 256 MB Angreifer-kontrollierten Daten – ein klassischer Heap-Overflow mit direkter Wirkung auf benachbarte Objekte.

Technische Analyse: Vom Shift zum vtable-Hijack

Laut GHSL-2026-140 entsteht der Bug in folgender Berechnung der Compression-Unit-Größe: (UInt32)1 << (BlockSizeLog + CompressionUnit). Der NTFS-Parser akzeptiert Cluster-Größen bis 2^30 Byte. Ein Angreifer wählt im manipulierten NTFS-Image ClusterSizeLog ≥ 28 kombiniert mit CompressionUnit == 4. Damit erreicht der Shift-Exponent den Wert 32, was bei einem 32-Bit-Datentyp Undefined Behavior nach C++-Standard ist.

Schadhafter Berechnungspfad (vereinfacht)
// CInStream::GetCuSize() in der NTFS-Handler-Implementierung
UInt32 GetCuSize() {
    // BlockSizeLog wird aus Cluster-Size-Log abgeleitet (>= 28 möglich)
    // CompressionUnit ist im NTFS-Compressed-Attribute frei wählbar (bis 4)
    // Bei BlockSizeLog=28 und CompressionUnit=4 ergibt sich Exponent 32.
    return (UInt32)1 << (BlockSizeLog + CompressionUnit);  // UB bei >= 32
}

// Folge: _inBuf wird auf x86/x64 zu 1 Byte allokiert.
// Anschliessend liest 7-Zip 256 MB komprimierte Cluster-Daten in _inBuf.

Das GitHub Security Lab beschreibt die Exploitation-Kette präzise: Bereits nach den ersten 304 Byte der Überschreitung wird der vtable-Pointer eines benachbart allokierten CInStream-Objekts überschrieben. Beim zweiten Read()-Aufruf dispatcht das Programm über den korrupten Pointer – ein lehrbuchmässiger vtable-Hijack. Der Angreifer erhält damit Kontrolle über den Instruction-Pointer.

Abstrakte Visualisierung eines Heap-Overflows mit Speicherbereichen, die in benachbarte Strukturen überlaufen
Ein 1-Byte-Puffer empfängt 256 MB Daten – der typische Heap-Overflow überschreibt benachbarte Objekte inklusive vtable-Pointer.
32-Bit- versus 64-Bit-Builds

Laut SOC-Prime-Analyse und GHSL-Advisory sind 32-Bit-Builds grundsätzlich anfällig für Code-Execution.

Auf 64-Bit-Systemen ist Code-Execution möglich, wenn mindestens 16 GB RAM verfügbar sind. Systeme mit weniger Speicher reagieren in der Regel mit einem Denial-of-Service durch Prozessabsturz.

Da die 64-Bit-Architektur den überschriebenen Bereich physikalisch addressieren muss, entscheidet der verfügbare RAM über Crash vs. RCE.

Angriffsfläche: Jede Dateiendung ist gefährlich

Besonders heimtückisch macht CVE-2026-48095 das MIME-Magic-Verhalten von 7-Zip. Die Software erkennt Archive nicht ausschliesslich anhand der Dateiendung, sondern fällt auf eine signaturbasierte Erkennung zurück, wenn der registrierte Handler die Datei ablehnt. Der NTFS-Handler reagiert auf die Signatur "NTFS " ab Byte-Offset 3 – unabhängig davon, ob die Datei .7z, .zip, .rar oder gar keine Endung trägt.

Exploitation-Kette laut GHSL-2026-140

  1. 1Angreifer erstellt manipuliertes NTFS-Image mit ClusterSizeLog ≥ 28 und CompressionUnit == 4.
  2. 2Image wird mit beliebiger Endung (.zip, .7z, .rar, ohne Endung) per E-Mail oder Download verteilt.
  3. 3Opfer öffnet die Datei in 7-Zip 26.00 – der registrierte Handler scheitert, der NTFS-Handler übernimmt anhand der Signatur.
  4. 4CInStream::GetCuSize() berechnet wegen Undefined Behavior eine Puffergrösse von 1 Byte.
  5. 5ReadStream_FALSE() schreibt 64 KB pro Read-Iteration in den 1-Byte-Puffer.
  6. 6Nach 304 Byte ist der vtable-Pointer des benachbarten CInStream-Objekts überschrieben.
  7. 7Beim nächsten virtuellen Funktionsaufruf dispatcht das Programm über den vom Angreifer kontrollierten Pointer – RCE.

Für die Angriffsbedingung „User Interaction Required“ (UI:R im CVSS-Vektor) genügt also bereits ein normaler Doppelklick auf eine vermeintlich harmlose Archivdatei. In Kombination mit Phishing-Mailings, Cloud-Sharing-Links und manipulierten Download-Portalen ist die Hürde für einen erfolgreichen Angriff niedrig.

Auswirkungen: Wer ist betroffen?

7-Zip ist mit geschätzten Hunderten Millionen Installationen eines der am weitesten verbreiteten Archivierungs-Tools weltweit – sowohl auf Privat- als auch auf Unternehmens-Endpoints, eingebettet in Software-Distributionen und als Bibliothek in Drittprodukten. Die folgende Übersicht fasst die direkt betroffenen Konstellationen zusammen.

KonfigurationWahrscheinlicher EffektRisiko
7-Zip 26.00 (32-Bit) auf WindowsRemote Code Execution möglichKritisch
7-Zip 26.00 (64-Bit) mit ≥ 16 GB RAMRemote Code Execution möglichKritisch
7-Zip 26.00 (64-Bit) mit < 16 GB RAMDenial-of-Service (Prozessabsturz)Hoch
Drittsoftware mit 7-Zip-Library 26.00Wahrscheinlich anfällig, abhängig vom WrapperHoch
7-Zip 26.01 oder neuerNicht betroffenSicher
Hohe Verbreitung über Drittsoftware

7-Zip wird von zahlreichen Tools als Bibliothek eingebunden – etwa für Container-Builds, Backup-Lösungen, Mailgateways oder Forensik-Software. Diese eingebetteten Versionen werden häufig nicht automatisch durch das Endpoint-Patch-Management aktualisiert und tauchen oft erst über ein SBOM in der Inventur auf.

Empfohlene Massnahmen

Die Behebung der Lücke ist trivial – 7-Zip 26.01 vom 27. April 2026 enthält den Fix. Komplex ist hingegen das vollständige Auffinden aller Installationen. Folgende vier Schritte bilden eine pragmatische Reaktion ab:

01

Inventarisieren

Alle Endpoints und Server auf 7-Zip-Installationen prüfen. Verteilungssoftware (z. B. Intune, SCCM) sowie EDR-Telemetrie nutzen, um Version 26.00 zu identifizieren.

02

SBOM-Abgleich

Drittsoftware-Inventar (SBOM) auf eingebettete 7-Zip-Bibliotheken durchsuchen. Insbesondere Backup-, Forensik- und Container-Tools überprüfen.

03

Update verteilen

Aktualisierung auf 7-Zip 26.01 zentral ausrollen. Bei Drittsoftware Hersteller-Patches abwarten oder temporäre Workarounds prüfen.

04

Monitoring schärfen

Prozess-Crashes von 7-Zip im SIEM korrelieren. Auffällige Archiv-Öffnungen mit anschliessendem Crash deuten auf Exploitation-Versuche hin.

Abstrakte Visualisierung eines Patch-Management-Dashboards mit vernetzten Endpoints und Schutzindikatoren
Zentrales Patch-Management und SBOM-Abgleich beschleunigen die Reaktion auf Schwachstellen wie CVE-2026-48095 erheblich.
PowerShell – 7-Zip-Versionen auf Windows-Endpoints prüfen
# Lokale Installationen aus der Registry ausgeben
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
  Where-Object { $_.DisplayName -like "*7-Zip*" } |
  Select-Object DisplayName, DisplayVersion, InstallLocation

# Beispielausgabe:
# DisplayName     DisplayVersion  InstallLocation
# -----------     --------------  ---------------
# 7-Zip 26.00     26.00           C:\Program Files\7-Zip\

# Remote-Abfrage über mehrere Hosts (Inventarisierung)
$hosts = Get-Content .\inventory.txt
Invoke-Command -ComputerName $hosts -ScriptBlock {
  (Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*).
    Where({ $_.DisplayName -like "*7-Zip*" }) |
    Select-Object DisplayName, DisplayVersion
} | Export-Csv -NoTypeInformation -Path 7zip_audit.csv
Detection ohne IOC – Verhalten beobachten

Da keine vom Hersteller publizierten IOCs vorliegen, empfiehlt sich verhaltensbasierte Detection: Abstürze von 7zFM.exe / 7z.exe in zeitlicher Nähe zum Öffnen archivähnlicher Dateien sind verdächtig.

Sinnvoll sind SIEM-Regeln auf Sysmon-Event-ID 1 (Process Create) für 7-Zip-Prozesse in Verbindung mit Event-ID 5 (Process Terminated) bei kurzer Lebensdauer und externer Dateiquelle.

Blackfort unterstützt Sie beim Aufbau passender Korrelationen über das Security Logging & Monitoring.

Einordnung: Lehren für das Vulnerability Management

CVE-2026-48095 ist aus drei Gründen exemplarisch für die aktuelle Bedrohungslage rund um Standard-Tools: erstens die enorme Verbreitung der betroffenen Software, zweitens die niedrige Eintrittshürde (Doppelklick reicht) und drittens der verfügbare Proof-of-Concept, der die Zeit bis zur Massenausnutzung deutlich verkürzt. Laut GHSL-Timeline wurde die Lücke am 24. April 2026 gemeldet und bereits am 27. April – nach nur drei Tagen – mit 7-Zip 26.01 behoben. Der Hersteller-Reaktionsweg war damit vorbildlich kurz, doch die anschliessende Disclosure am 22. Mai bedeutet, dass Verteidiger seither in einem aktiven Zeitfenster operieren.

Patch-Lag als Hauptrisiko

Erfahrungswerte aus Pentests und Vulnerability-Assessments zeigen: Patch-Lag bei Endpoint-Software ist häufig grösser als bei Server-OS. Standardtools wie Archivierer, PDF-Reader oder Browser werden nicht selten erst Wochen nach Verfügbarkeit eines Patches aktualisiert – vor allem dort, wo Auto-Update deaktiviert oder das Tool als Portable-Variante eingesetzt wird.

Für CVE-2026-48095 ist diese Verzögerung besonders kritisch, weil ein funktionsfähiger PoC bereits öffentlich kursiert.

Für Sicherheitsverantwortliche bedeutet das konkret: 7-Zip gehört in jede Inventur und in jeden Patch-Zyklus – und zwar nicht nur auf den primären Arbeitsstationen, sondern auch auf Build-Servern, Forensik-Workstations, Mailgateways und Backup-Hosts. Die Frage „Wo läuft bei uns 7-Zip 26.00?“ sollte sich innerhalb weniger Stunden beantworten lassen. Wer sie heute nicht beantworten kann, hat ein strukturelles Problem im Asset- und Schwachstellenmanagement, das CVE-2026-48095 nur sichtbar macht.

Hinweis

Die Informationen basieren auf öffentlich verfügbaren Quellen zum Zeitpunkt der Veröffentlichung. Blackfort Technology übernimmt keine Gewähr für die Vollständigkeit oder Aktualität der Angaben.

Kontakt aufnehmen

IT-Security für Ihr Unternehmen

Blackfort Technology begleitet Unternehmen bei NIS2-Compliance, OT-Security und der Absicherung kritischer Infrastrukturen – von der Analyse bis zur Umsetzung.