Уязвимость «нулевого дня» в Comodo Internet Security позволяет удалённо вызвать BSOD одним IPv6-пакетом

2026-06-04 232 комментарии
Исследователь Маркус Хатчинс раскрыл уязвимость «нулевого дня» в Comodo Internet Security, позволяющую удалённо вызвать сбой Windows с появлением синего экрана смерти. Атака ComoDoS работает даже при закрытых портах брандмауэра, а исправление от Comodo пока отсутствует

Исследователь безопасности Маркус Хатчинс (Marcus Hutchins) публично раскрыл 3 июня 2026 года уязвимость нулевого дня в Comodo Internet Security – после того как несколько попыток связаться с разработчиком остались без ответа. Брешь, получившая название ComoDoS, находится в драйвере брандмауэра Inspect.sys и позволяет удалённо вызвать отказ в обслуживании (DoS): одного специально сформированного IPv6-пакета достаточно, чтобы вызвать на атакуемом компьютере с Windows синий экран смерти (BSOD), причём атака срабатывает, даже если в брандмауэре закрыты все порты.

Как нашли уязвимость

Хатчинс наткнулся на брешь, разрабатывая автономную систему на основе ИИ для поиска уязвимостей локального повышения привилегий в сторонних драйверах режима ядра Windows – такие драйверы часто используются в атаках типа BYOVD, когда злоумышленник приносит с собой уязвимый драйвер. Система регулярно отмечала драйверы самих разработчиков средств защиты, в том числе антивирусов и брандмауэров.

Из-за сбоя в обработке система проанализировала устаревшую версию Inspect.sys (драйвера брандмауэра Comodo) от 2014 года и присвоила ей высокий балл потенциальной опасности. Просматривая давно исправленные ошибки, исследователь заметил череду неудачных архитектурных решений и предположил, что в актуальной версии драйвера тоже найдётся свежая брешь. Первой он обнаружил похожую ошибку в разборе IPv4, но для удалённой атаки она бесполезна: по требованиям стандарта маршрутизаторы отбрасывают такие пакеты ещё в пути. Поэтому Хатчинс перешёл к IPv6 – его разбор сложнее и потому чаще содержит ошибки, а правила стандарта мягче, так что некорректные пакеты с большей вероятностью доходят до цели.

Как работает уязвимость

Пакет IPv6 состоит из обязательного «фиксированного» заголовка в 40 байт и необязательных расширенных заголовков, которые можно объединять в цепочку. Чтобы найти начало заголовка протокола более высокого уровня (TCP, UDP и других), драйвер перебирает расширенные заголовки и вычитает длину каждого из значения, взятого из поля длины полезной нагрузки фиксированного заголовка. Само это значение задаёт отправитель, и драйвер ни разу его не проверяет.

Если указать длину полезной нагрузки меньше суммарного размера расширенных заголовков, счётчик уходит ниже нуля. Поскольку это беззнаковое 64-битное число, оно не становится отрицательным, а заворачивается до максимума – около 18 квинтиллионов (0xFFFFFFFFFFFFFFF8). Дальше это значение приводит к обращению за пределы выделенной памяти, а так как драйвер работает на уровне DISPATCH_LEVEL, любая такая ошибка (page fault) мгновенно обрушивает всю систему.

Опаснее всего то, что брешь сидит в самом драйвере брандмауэра, и вредоносный пакет обрабатывается раньше, чем применяются правила фильтрации. Поэтому атака срабатывает, даже если в брандмауэре закрыты все порты. Для пакета Хатчинс выбрал расширенный заголовок Destination Options (поле Next Header = 60): его маршрутизаторы отбрасывают реже всего, что делает удалённую эксплуатацию надёжнее.

Почему это DoS, а не RCE

Переполнение открывает не только чтение, но и запись за пределами буфера, однако удалённое выполнение кода (RCE) Хатчинс считает маловероятным. При чтении размер усекается до 16 бит (около 64 КБ), и выход за границы можно вовсе предотвратить: сканер артефактов WebDAV в драйвере останавливается, встретив обычный HTTP-заголовок, так что достаточно вложить минимальный запрос GET.

При записи же размер усекается до 32 бит, а это гарантированно приводит к копированию около 4 ГБ через memcpy – система падает прежде, чем мог бы выполниться код. К тому же, чтобы добраться до этой операции, нужно полноценное TCP-соединение, то есть хотя бы один открытый порт. Уменьшить переполнение тоже не получится: сетевой пакет ограничен примерно 65 КБ, что несопоставимо с 4 ГБ. Рабочий пример (proof-of-concept) под названием ComoDoS исследователь выложил в открытый доступ и показал его работу на видео.

Хатчинс направил в Comodo полный отчёт с анализом первопричины, рекомендациями по исправлению и рабочим примером, но ответа не получил даже после двух повторных обращений. Публичной программы вознаграждения за уязвимости (bug bounty) у Comodo нет. Это не первый подобный случай: в бюллетене ZDI (ZDI-24-953) уже отмечалось, что компания почти два года игнорировала запросы на исправление.

Патча пока нет. До выхода исправления организациям, где используется Comodo Internet Security, советуют отслеживать аномальный трафик IPv6 на периметре сети и по возможности блокировать на пограничных устройствах расширенные заголовки IPv6, в первую очередь Destination Options (поле Next Header = 60).

© .
Комментарии и отзывы

Нашли ошибку?

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