## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-GHOSTN4444-POC-CVE-2025-6554
# CVE-2025-6554
**CVE-2025-6554** — это уязвимость в интерпретаторе V8 (движок JavaScript) браузера Chrome, связанная с неадекватной проверкой "дыр" (Hole Check) в непредназначенных переменных внутри выражений с опциональной цепочкой (optional chaining). POC (CVE-2025-6554-POC.JS) исследует недостаток механизма проверки "дыр" (Hole) в переменных перед их использованием, что позволяет читать неинициализированные значения — поведение, обычно блокируемое ссылочной ошибкой.
root@kitploit:~
function leak_hole() {
let x;
delete x?.[y]?.a;
return y;
let y;
}
function pwn() {
let hole = leak_hole();
%DebugPrint(hole);
}
pwn();
* * *
## Техническое объяснение
### 1\. Структура уязвимого кода
`let x;` и `let y;` объявляют переменные локальной области видимости. Строка `delete x?.[y]?.a` использует опциональную цепочку для безопасного доступа к вложенному свойству. Проблема: переменная `y` используется до её объявления, что должно вызывать ссылочную ошибку, но в предварительной версии V8 это происходило молча, позволяя захватить специальное значение, называемое "The Hole" (страж для переменных в TDZ — временной мёртвой зоне). Оператор в коде не должен быть доступен, так как всё ещё находится в TDZ. Но сбой позволяет это.