
CVE-2026-21986: VirtualBox Shared Folders — отказ в обслуживании (DoS) из-за истощения памяти ядра
В этом репозитории содержатся proof of concept (PoC) и технический отчёт по уязвимости CVE-2026-21986 — уязвимости типа «отказ в обслуживании» (denial of service) в Oracle VM VirtualBox.
Проблема присутствует в интерфейсе драйвера общих папок (Shared Folders) и позволяет многократно инициировать выделение памяти ядра через интерфейс IOCTL устройства. Это может привести к исчерпанию невыгружаемой памяти ядра и зависанию виртуальной машины.
Уязвимости присвоен идентификатор CVE-2026-21986 с оценкой CVSS 7.1, и она исправлена компанией Oracle.
Интерфейс драйвера ядра общих папок VirtualBox (VBoxMiniRdr)
Повторные вызовы IOCTL со специально сформированными входными буферами приводят к неконтролируемому выделению невыгружаемой памяти ядра. При продолжительном использовании это приводит к исчерпанию ресурсов и нестабильной работе или зависанию виртуальной машины.
Выполнения кода или повышения привилегий не наблюдалось.
Уязвимость вызывается через IOCTL_MRX_VBOX_ADDCONN, который обрабатывает управляемые пользователем входные буферы и приводит к выделению памяти ядра, пропорциональному размеру входных данных. При повторных вызовах выделения накапливаются быстрее, чем освобождаются, что приводит к исчерпанию невыгружаемого пула памяти.
exploit/ poc.cpp
writeup/ technical_writeup.md memory_analysis.md
Эта уязвимость (CVE-2026-21986) была обнаружена и ответственно раскрыта Мохаммедом Ба Рашедом, автором этого репозитория, и публично подтверждена в бюллетене безопасности Oracle и документации по исправлению.
Этот проект предназначен только для образовательных и исследовательских целей. Уязвимость исправлена компанией Oracle. Автор не поощряет и не поддерживает неправомерное использование этой информации.