Может ли виртуальная машина прочитать память хоста?

Уязвимость PwnEscape в сетевом коде ядра Linux позволяет программе внутри виртуальной машины добраться до памяти физического сервера, на котором она работает. В опубликованной записи CVE-2026-99999 оценена как критическая: 9,3 балла из 10. По имеющимся данным, случаев эксплуатации в реальных атаках не зафиксировано.
Может ли виртуальная машина прочитать память хоста?
Изображение носит иллюстративный характер

Проблему обнаружил Паулос Йибело из компании во время двухнедельного конкурса безопасности Vercel в августе. Специально сформированные сетевые пакеты, отправленные из виртуальной машины, позволяли читать память хоста, а в лабораторных условиях — аварийно завершать его работу и выполнять на нём код. Один пакет мог раскрыть около 32 байт памяти; продолжая отправку, атакующий мог собирать данные постепенно.
Vercel подтвердила, что утечку памяти показали на её рабочих песочницах. Но сбой хоста и выполнение кода исследователь проверял на собственных машинах, настроенных так же, как инфраструктура Vercel. Йибело использовал уязвимость, чтобы получить права администратора на тестовом хосте и выйти за пределы виртуальной машины. Он отдельно уточнил: «Это результат лабораторного исследования, а не утверждение о выполнении команд с правами root в производственной среде какого-либо поставщика». По словам Vercel, отчёты участников конкурса не свидетельствовали о чтении чьих-либо файлов, секретов или данных приложений. Двух специально составленных пакетов, однако, хватало, чтобы обрушить тестовый хост вместе со всеми запущенными на нём песочницами.
В опубликованной записи CVE вектор атаки обозначен как локальный: злоумышленник уже должен иметь возможность запускать код внутри гостевой виртуальной машины. Это не уязвимость, которую можно задействовать, просто послав пакеты через открытый интернет. Она также не включена в каталог активно используемых уязвимостей CISA. Национальная база уязвимостей США (NVD) получила запись CVE, но ещё не завершила её проверку.
Проблема находится в сетевом коде ядра Linux, а не в Firecracker или настройках изоляции Vercel. В Vercel Sandbox пользовательский код запускается в отдельных микро-ВМ Firecracker: у каждой собственное ядро Linux, а сами машины работают на физических хостах Amazon EC2. Такая конструкция должна разделять рабочие нагрузки клиентов и хостовую систему. сообщила, что песочница Vercel была защищена строже обычных отраслевых стандартов и ошибочной конфигурации исследователи не нашли. Но уязвимость общего компонента Linux может затронуть облачную инфраструктуру разных поставщиков. Vercel отмечает, что почти все крупные облачные провайдеры используют ядро Linux на этом уровне изоляции.
Исследование велось с помощью Omega-Pwn — внутреннего инструментария , объединённого с элементами архитектуры OmegaClaw проекта SingularityNET. Система сохраняла гипотезы, трассировки кода, неудачные попытки и результаты длительной работы. Основным механизмом рассуждений был GPT-5.6 Sol; исследователи направляли поиск, проверяли выводы модели и сопоставляли перспективные результаты с поведением ядра на контролируемых системах. По оценке , на поиск ушло три дня, а расходы на API-токены составили менее 700 долларов.
Исправление внесено в ядро коммитом 6785011f8b16. Его подготовил Майкл С. Циркин из Red Hat, после чего изменение попало в основную ветку Linux. Проверка не позволяет ядру обрабатывать данные контрольной суммы пакета, если они указывают внутрь заголовка IPv4; её добавили в пяти местах сетевого кода. Автор назвал её «дополнительной мерой защиты в глубину» и указал, что полноценная проверка при поступлении пакета в ядро ещё требует доработки.
Первые исправленные версии стабильных веток:
    []5.10: 5.10.272
    []5.15: 5.15.223
    []6.1: 6.1.190
    []6.6: 6.6.159
    []6.12: 6.12.113
    []6.18: 6.18.57
    []7.2: 7.2.11
Администраторам нужно обновить именно ядро хоста до исправленной версии или сборки поставщика с нужным патчем, а затем перезагрузить сервер. Обновление ядра внутри гостевой виртуальной машины хост не защищает. Дистрибутив может включить исправление, не меняя номер версии, поэтому следует сверяться с бюллетенем безопасности поставщика и проверять ядро, с которым хост действительно загружен, а не полагаться только на вывод команды uname. Отдельного обходного решения в опубликованных сведениях нет. Если обновление приходится отложить, ограничения вроде отключения вложенной виртуализации и запуска микро-ВМ через Firecracker jailer способны сузить последствия компрометации, но саму PwnEscape не устраняют. Vercel сообщила, что поддерживает ядра хостов в актуальном состоянии и применяет эти меры.
На августовском конкурсе Vercel предложила в общей сложности до 1 миллиона долларов за обнаружение способов выйти из песочниц. Ни одна отдельная выплата не достигла этой суммы: максимальная награда за один отчёт составляла 50 тысяч долларов. Всего компания выплатила 242 тысячи долларов по 1 285 отчётам, а PwnEscape стала критической находкой конкурса. Этот случай пополнил список исследований уязвимостей с помощью больших языковых моделей: ранее в том же году другая команда использовала модель, чтобы получить доступ к внутренним системам OpenAI.


Новое на сайте

20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик 20858Как одна учётная запись ConnectWise открыла доступ к 173 арендаторам Microsoft 365? 20857Пять минут до заражения: как подменили обновления AOMEI Backupper 20856Ловушка под видом регистрации: как UAT-11985 крадёт аккаунты Google 20855Может ли виртуальная машина прочитать память хоста? 20854Как дешёвые Android-смартфоны превращаются в чужие прокси? 20853В Индии имя звонящего появится на экране вместе с номером 20852Как проверить готовность команды к звонку с клонированным голосом? 20851Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому...
Ссылка