Уязвимость и атака нулевого дня (zero-day): что это и защита
Проверено экспертной редакцией SecRadar · по первоисточникам ФСТЭК / ФСБ / Банка России
Уязвимость нулевого дня — это ошибка или недочёт в программном обеспечении, о которой ещё не знает разработчик и для которой поэтому не существует исправления. Материал разводит три смежных термина — уязвимость, эксплойт и атаку нулевого дня, — показывает, как уязвимость проходит путь от обнаружения до патча и превращения в n-day, объясняет, кто реально использует такие уязвимости и почему, и разбирает рабочие способы защититься, когда сигнатурный антивирус ещё не знает об угрозе.
Кратко
- Что это
- Уязвимость в ПО, неизвестная разработчику на момент обнаружения или начала эксплуатации — патча ещё нет.
- Почему «нулевого дня»
- У вендора было ноль дней на исправление до того, как о проблеме стало известно или её начали эксплуатировать.
- Три термина
- Уязвимость — сам дефект. Эксплойт — код, который его использует. Атака — фактическое применение эксплойта против цели.
- Жизненный цикл
- Обнаружение → разработка эксплойта → раскрытие (вендору или публично) → патч → уязвимость становится n-day.
- Кто использует
- Чаще APT-группы и брокеры эксплойтов — актив дорогой, его берегут для ценных целей; массовая киберпреступность чаще эксплуатирует уже раскрытые n-day.
- Как защититься
- Поведенческое обнаружение (EDR/XDR, песочница) вместо сигнатур, быстрый патчинг n-day через управление уязвимостями, виртуальный патчинг через WAF/IPS.
Что такое уязвимость нулевого дня
Уязвимость нулевого дня (zero-day, 0-day) — это неизвестная разработчику уязвимость в программном обеспечении, для которой ещё нет исправления (патча). Название означает, что у вендора было «ноль дней» на устранение проблемы до того, как о ней стало известно публично или её начали эксплуатировать — в отличие от обычной уязвимости, для которой хотя бы теоретически уже идёт работа над патчем.
Дефект может обнаружить кто угодно: независимый исследователь безопасности, специалист вендора при внутреннем аудите кода, участник программы bug bounty или сам злоумышленник, который целенаправленно ищет брешь в конкретном продукте. От того, кто нашёл уязвимость первым и что он с этим фактом сделал, зависит вся дальнейшая судьба находки: раскрытие вендору по ответственной процедуре, продажа брокеру эксплойтов или немедленное использование в атаке без предупреждения кого-либо.
Термин применим к любому классу программного обеспечения — операционным системам, браузерам, офисным пакетам, прошивкам сетевого оборудования, мобильным приложениям. Уязвимость нулевого дня не привязана к конкретной технологии: важен не тип дефекта, а сам факт, что о нём ещё не знает тот, кто мог бы его закрыть.
Терминология: уязвимость, эксплойт, атака нулевого дня
0-day уязвимость, 0-day эксплойт и атака нулевого дня — три разных, хотя и связанных понятия, которые в обиходе часто путают. Уязвимость — это сам дефект в коде, эксплойт — конкретный код или техника, которые этот дефект используют, а атака — фактическое применение эксплойта против реальной цели.
0-day уязвимость дефект
Сама ошибка в коде или логике программы — например, некорректная проверка входных данных, которая позволяет выполнить произвольный код. Существование уязвимости не означает, что кто-то уже умеет её использовать: между обнаружением дефекта и рабочим эксплойтом может пройти заметное время.
0-day эксплойт инструмент
Код, скрипт или последовательность действий, которые превращают теоретическую уязвимость в практический результат — выполнение кода, повышение привилегий, обход аутентификации. Разработка рабочего эксплойта под сложную уязвимость — отдельная инженерная задача, требующая ресурсов и времени.
Атака нулевого дня событие
Фактическое применение эксплойта против конкретной цели — организации, продукта, пользователя. Уязвимость и даже готовый эксплойт могут существовать годами и не превратиться в атаку, если у владельца эксплойта нет мотива его применять именно сейчас и именно здесь. На практике эксплойт нулевого дня чаще всего служит лишь точкой входа: следом на устройство доставляется вредоносное ПО — бэкдор, шпионское ПО или шифровальщик, — которое и реализует конечную цель атаки.
Разница между понятиями напрямую влияет на оценку риска. Публикация об уязвимости нулевого дня без доказательства эксплуатации (proof of concept) — это одна степень срочности реагирования, подтверждённый рабочий эксплойт в открытом доступе — другая, а зафиксированная атака нулевого дня против организаций конкретной отрасли — третья, требующая немедленных действий, а не планового патчинга по графику.
Жизненный цикл уязвимости нулевого дня
Уязвимость нулевого дня проходит несколько стадий от обнаружения до момента, когда она перестаёт быть «нулевого дня» и становится обычной, известной и патченной проблемой — n-day. Порядок и длительность стадий зависят от того, кто нашёл уязвимость первым и какую стратегию раскрытия выбрал.
Обнаружение
Дефект находит исследователь, вендор при внутреннем тестировании или злоумышленник в ходе целенаправленного поиска. С этого момента у вендора формально начинается отсчёт «нулевого дня».
Разработка эксплойта
Теоретический дефект превращается в рабочий инструмент атаки. Не каждая найденная уязвимость доходит до этой стадии — многие остаются описанными, но не эксплуатируемыми на практике.
Раскрытие
Информация доходит до вендора — по ответственной процедуре (coordinated disclosure) с отсрочкой публикации до выхода патча, либо публично и сразу, либо вообще не доходит и уязвимость сначала обнаруживают уже по следам атаки.
Патч
Вендор выпускает исправление. С этого момента уязвимости обычно присваивается публичный идентификатор (CVE и, для российских систем, запись в БДУ ФСТЭК), и она официально выходит из статуса «нулевого дня».
Становится n-day
После выхода патча уязвимость формально устранена, но остаётся опасной ещё долго: организации, которые не установили обновление, остаются уязвимы к тому же самому эксплойту — уже известному и куда более массово используемому.
Ключевой практический вывод из этой схемы: самый массовый ущерб зачастую наносит не сама атака нулевого дня, а последующая волна n-day-эксплуатации — когда рабочий эксплойт уже стал публично известен (например, после выхода патча или утечки инструментария), а установка обновления у части организаций затянулась. Именно поэтому скорость патч-менеджмента после выхода исправления так же важна, как способность обнаружить саму атаку нулевого дня.
Почему zero-day опасны и кто их использует
Уязвимости нулевого дня опасны потому, что против них не работает главный механизм массовой защиты — сравнение с базой известных угроз: сигнатуры для атаки, которая ещё никому не известна, просто не существует. Классический антивирус или межсетевой экран, настроенные на блокировку по сигнатурам, пропускают такую атаку — а окно между началом эксплуатации и выходом патча может занимать от нескольких дней до месяцев в зависимости от сложности уязвимости и скорости реакции вендора.
Разработка или покупка рабочего эксплойта под серьёзную уязвимость нулевого дня стоит дорого и требует квалификации, поэтому в реальности такие уязвимости берегут для целей, которые оправдывают затраты.
Группы с длительной, целенаправленной атакой на конкретную организацию или отрасль, часто связываемые с интересами государств. Zero-day для них — инструмент первичного проникновения в защищённую инфраструктуру, где n-day-эксплойты уже блокируются обновлённой защитой.
Коммерческие организации и частные исследователи, которые находят уязвимости нулевого дня и продают их — государственным структурам, вендорам систем офензивной кибербезопасности или через официальные программы bug bounty самому разработчику уязвимого продукта.
Из-за высокой стоимости и дефицитности настоящих zero-day рядовые преступные группы обращаются к ним реже: экономически выгоднее массово эксплуатировать уже раскрытые n-day-уязвимости против организаций, которые ещё не установили патч.
Есть и обратный сценарий, который расширяет круг пользователей zero-day за пределы изначального владельца: инструментарий, разработанный узкой группой для точечных атак, может утечь или быть обнаружен и затем воспроизведён другими — после чего уязвимость, изначально использованная точечно, превращается в массовую угрозу уже на стадии n-day.
Как защититься от атак нулевого дня
Против уязвимости, о которой ещё никто официально не знает, не существует единственной меры, которая закрывает риск полностью — защита строится эшелонированно, на нескольких независимых рубежах одновременно. Три рабочих направления ниже решают разные части задачи и дополняют, а не заменяют друг друга.
- Поведенческое обнаружение вместо сигнатур. EDR/XDR следит не за совпадением с базой известных угроз, а за подозрительным поведением процесса — попыткой повышения привилегий, нетипичной инъекцией кода, аномальной сетевой активностью, — и способен заметить атаку нулевого дня по её действиям, даже не зная имени конкретной уязвимости. Песочница дополняет это на уровне файлов и вложений: подозрительный объект запускается в изолированной среде, и его реальное поведение проверяется до того, как он попадёт в рабочую инфраструктуру.
- Быстрый патчинг для n-day. Поскольку самый массовый ущерб чаще наносит не сама атака нулевого дня, а последующая волна эксплуатации уже раскрытой уязвимости, скорость установки обновлений напрямую определяет длительность окна риска. Управление уязвимостями закрывает эту задачу системно: инвентаризация активов, приоритизация по критичности и фактической эксплуатируемости, контроль сроков устранения — вместо разрозненного и нерегулярного обновления по факту напоминания. Для веб-приложений тот же риск описан отдельной категорией OWASP Top 10 — сбои цепочки поставок ПО (A03 в редакции 2025, ранее A06 «уязвимые и устаревшие компоненты»).
- Виртуальный патчинг на сетевом уровне. Пока официальное исправление ещё не вышло или не установлено на всех системах, WAF и IDS/IPS могут блокировать известный паттерн эксплуатации на уровне сетевого трафика — это не устраняет саму уязвимость в коде, но перекрывает конкретный путь атаки до момента, когда патч будет физически установлен на все затронутые системы.
Связь с БДУ ФСТЭК и CVE
CVE и БДУ ФСТЭК — два независимых реестра, которые присваивают уязвимостям публичные идентификаторы уже после раскрытия, а не в момент, когда уязвимость ещё имеет статус нулевого дня. Пока об уязвимости не знает никто, кроме нашедшего её, ни в одном из этих реестров записи о ней нет и быть не может.
↔ таблицу можно прокрутить вбок
| Реестр | Кто ведёт | Что содержит | Где применяется |
|---|---|---|---|
| CVE | MITRE и сеть аккредитованных CNA (CVE Numbering Authorities) | Уникальный идентификатор для каждой публично раскрытой уязвимости конкретного продукта | Международный стандарт де-факто, на него ссылаются вендоры, сканеры уязвимостей, threat intelligence |
| БДУ ФСТЭК | ФСТЭК России | Записи об уязвимостях (УБИ) и угрозах безопасности информации, часть которых кросс-ссылается на CVE, часть заводится независимо | Используется при построении модели угроз для российских ГИС, ИСПДн и объектов КИИ |
Практическое следствие для организаций, работающих по российской регуляторике: при построении модели угроз актуальную уязвимость нулевого дня нельзя формально учесть по идентификатору БДУ ФСТЭК, потому что запись там ещё не появилась — реестр по своей природе описывает уже известные угрозы. Это не делает модель угроз бесполезной: она задаёт структуру категорий угроз и нарушителей, в которую конкретная атака нулевого дня укладывается содержательно даже до появления формальной записи, а формальную ссылку на БДУ ФСТЭК добавляют уже постфактум, когда уязвимость раскрыта и получает идентификатор.
Частые вопросы
Что такое уязвимость нулевого дня простыми словами?
Почему называется нулевого дня?
Чем zero-day отличается от обычной уязвимости?
Как защититься от zero-day?
Чем 0-day уязвимость отличается от 0-day эксплойта и 0-day атаки?
Кто использует уязвимости нулевого дня?
Что такое CVE и БДУ ФСТЭК применительно к zero-day?
Словарь угроз на SecRadar
Разбор терминов и методов атак без вендорной привязки — что стоит за понятием, как оно связано со смежными угрозами и какие классы СЗИ закрывают конкретный риск.