Віртуальний патчинг: як виграти час проти zero-day і свіжих CVE

Небезпечне вікно — не сама вразливість, а час до патча

Про критичну вразливість у популярній бібліотеці ви дізнаєтеся вранці. Оновлення від вендора виходить того ж дня. А от викотити його у продакшн ви зможете хіба що за кілька днів: треба протестувати, узгодити вікно обслуговування, переконатися, що нова версія нічого не поламала. Увесь цей проміжок — від публічного розкриття до реального оновлення — ваш застосунок вразливий, і скани в інтернеті починаються буквально за години після розкриття.

Для невеликої команди це найгостріший момент. Ви знаєте про діру, ви не можете закрити її миттєво в коді, і ви бачите, як зростає ймовірність, що по ній вдарять. Саме це вікно й закриває віртуальний патчинг.

Що таке віртуальний патч

Віртуальний патч — це правило на edge, яке блокує саме той шаблон запиту, що експлуатує вразливість, не змінюючи код застосунку. Ви не виправляєте баг — ви робите так, щоб запит, який його тригерить, ніколи не дійшов до origin.

Різниця у швидкості принципова:

  • Справжній патч змінює вашу програму. Він правильний і остаточний, але повільний у розгортанні: збірка, тести, деплой, вікно обслуговування.
  • Віртуальний патч змінює лише правило фільтрації на edge. Він тимчасовий і зовнішній, зате застосовується за секунди й розлітається на всі вузли через watch за сховищем конфігурації менш ніж за секунду.

Одне не замінює інше. Віртуальний патч купує вам час, щоб накотити справжній без паніки й нічних деплоїв.

Як це працює на практиці

Коли з’являється свіжий CVE із відомим шаблоном експлуатації, послідовність така:

  1. Опис шаблону. Визначається сигнатура зловмисного запиту — конкретний шлях, параметр, заголовок чи їхня комбінація, яку використовує експлойт.
  2. Публікація правила. Правило додається до фільтра. Багато класів атак уже покриває базовий набір правил OWASP, тож інколи «патч» — це просто впевненість, що потрібне правило активне.
  3. Спершу спостереження, потім блокування. Нове правило корисно спочатку запустити в режимі детекції: воно фіксує збіги в аудит-логу, але не блокує. Так ви бачите, чи не ловить воно легітимний трафік, — і лише потім переводите в блокування. Ця обережність тісно пов’язана з тюнінгом хибних спрацювань.
  4. Зняття після справжнього патча. Коли origin оновлено, віртуальне правило можна прибрати — або лишити як додатковий рубіж.

Чому саме edge, а не сам застосунок

Сенс у тому, що фільтр стоїть перед вразливим кодом. Зловмисний запит зупиняється на нашому вузлі в ЄС і ніколи не торкається діри, навіть якщо вона все ще у вашому застосунку. Ви керуєте цим окремо від релізного циклу: правило змінюється без передеплою й миттєво діє на всьому парку. Для команди, яка не може дозволити собі екстрений нічний деплой на кожен CVE, це різниця між керованою реакцією й пожежею.

Чого ми не обіцяємо

Віртуальний патч — це відстрочка, а не лікування. Він закриває відомий шаблон експлуатації; по-справжньому вразливість усуває лише оновлення коду. Ми не стверджуємо, що edge-правило робить діру «неіснуючою» — воно робить її недосяжною для відомих атак, поки ви готуєте нормальний патч. І кожне спрацювання лишає слід у незмінному аудит-логу, щоб згодом ви бачили, скільки спроб було відбито у тому небезпечному вікні. Накладні витрати на перевірку тримаються в межах проєктного бюджету — як ми його міряємо.

Хочете мати змогу закрити свіжий CVE за секунди, а не за дні? Напишіть нам.

Побачте це на власному домені

Ми підключаємо перших партнерів вручну. Назвіть свій домен — решту зробимо ми.

Подати заявку на ранній доступ