Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/ghostn4444/poc-cve-2025-6554
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPapers & ForschungLernen & BildungBinary-Exploitation
GitHubghostn4444/poc-cve-2025-6554

POC-CVE-2025-6554

Proof-of-Concept-Exploit für CVE-2025-6554, eine Sicherheitslücke in der V8-JavaScript-Engine, die unbefugten Zugriff auf nicht initialisierte 'Hole'-Werte über optionales Chaining ermöglicht, was Typverwirrung und Speichermanipulation ermöglicht.

Repository anzeigen
11vor 1 JahrNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2025-6554

CVE-2025-6554 ist eine Schwachstelle in Chromes V8 (JavaScript-Engine)-Interpreter (Hole-Check 'unzureichende Kontrolle in unbeabsichtigten Variablen in Ausdrücken mit optionaler Verkettung). POC (CVE-2025-6554-POC.JS) untersucht einen Fehler im "Hole"-Verifikationsmechanismus in Variablen vor der Verwendung, der das Lesen nicht initialisierter Werte ermöglicht – ein Verhalten, das normalerweise durch eine Referenz blockiert wird.

root@kitploit:~
function leak_hole() {
    let x;
    delete x?.[y]?.a;
    return y;
    let y;
}
function pwn() {
    let hole = leak_hole();
    %DebugPrint(hole);
}
pwn();

Technische Erklärung

1. Struktur des angreifbaren Codes

let x; und let y; deklarieren Variablen im lokalen Gültigkeitsbereich. Die delete x?.[y]?. Zeile verwendet optionale Verkettung, um sicher auf eine verschachtelte Eigenschaft zuzugreifen. Problem: Variable y wird verwendet, bevor sie deklariert wurde, was einen Referenzfehler auslösen sollte, aber in der V8-Vorabversion schlug dies still fehl, sodass der spezielle Wert "The Hole" (Sentinel für TDZ-Variablen – Temporal Dead Zone) erfasst werden konnte. Der Rückgabewert (return y) im Code sollte nicht zugänglich sein, da y sich noch im TDZ befindet. Der Fehler ermöglicht es jedoch.

2. Verhalten vor dem Patch

Der Mechanismus, der den Zugriff auf Variablen im TDZ verhindert, ist ThrowReferenceErrorIfHole. Vor dem Patch wurde dieser Mechanismus nur einmal während delete x?.[y]?. aufgerufen. V8 intern markierte, dass die Variable y bereits als "kein Hole" verifiziert worden sei, aber diese Verifikation entzog sich dem kontrollierten Gültigkeitsbereich und wurde daher bei return y nicht erneut ausgewertet.

3. Was korrigiert wurde

Der Patch fügt einen weiteren obligatorischen Aufruf von ThrowReferenceErrorIfHole bei return y hinzu, um sicherzustellen, dass jeder Versuch, auf y vor der Deklaration zuzugreifen, korrekt einen Fehler auslöst. Diese Verifikation wurde durch den Scope‑Check OilpanCheckEscapeScope gewährleistet, der in alle Aufrufe von OptionalChainNullLabelScope aufgenommen wurde.

Angriffsablauf

root@kitploit:~
delete x?.[y]?. → Versuche, auf y zuzugreifen (nicht initialisiert) → Fehlschlag des "Hole"-Checks 
→ y entkommt als Wert → return y; → Erfasse den "Hole"-Wert → DebugPrint enthüllt ihn

Der Angreifer kann durch das Erfassen dieses "Hole" Rückschlüsse auf den internen Zustand der V8-Engine ziehen, was Angriffe wie die folgenden erleichtert:

  • Type‑Confusion‑Exploitation
  • Stack‑Manipulation
  • Scope‑Check‑Umgehung
Tool herunterladen