🌐 Виявлено критичну вразливість HTTP/2 Bomb, яка здатна вивести з ладу найбільші вебсервери

Дослідники з кібербезпекової компанії Calif виявили нову небезпечну технічну проблему в архітектурі популярного мережевого протоколу HTTP/2, який відповідає за швидке завантаження сайтів в інтернеті. Прогалина, яку назвали HTTP/2 Bomb, дозволяє здійснювати віддалені атаки типу “відмова в обслуговуванні”, повністю блокуючи роботу серверів і роблячи сайти недоступними. Цю атаку розробили за допомогою штучного інтелекту OpenAI Codex, об’єднавши два класичні методи злому: архітектурну компресійну бомбу та тривале утримання з’єднання за принципом атак виснаження ресурсів сервера через повільне надсилання запитів. Головною ціллю зловмисників є механізм HPACK – це спеціальний алгоритм стиснення заголовків, що зменшує обсяг технічних даних під час передачі інформації між користувачем і сайтом. Суть атаки полягає в тому, що хакер надсилає майже порожній заголовок розміром в один байт, але через особливості обробки алгоритмом HPACK сервер виділяє під кожну таку мінімальну одиницю величезну кількість оперативної пам’яті для внутрішнього обліку, повторюючи це тисячі разів у межах одного запиту.

Нова атака повністю обходить стандартні ліміти безпеки вебсерверів, оскільки обмеження на максимальний розмір розпакованих заголовків просто не спрацьовують через фактичну відсутність великого тексту для декодування. При цьому за рахунок використання нульового вікна керування потоком даних сервер змушений утримувати це з’єднання відкритим для клієнта, не звільняючи зайняту пам’ять. Хронологія дослідження показує, що один звичайний домашній комп’ютер зі швидкістю інтернет-підключення 100 Мбіт/с здатний за кілька секунд заблокувати потужний сервер. Під час практичних тестів один клієнт зміг поглинути та заблокувати 32 гігабайти оперативної пам’яті сервера Apache HTTPD та Envoy всього за 20 секунд. Наразі підтверджено, що вразливість присутня у стандартних конфігураціях таких платформ, як NGINX, Apache HTTPD, Microsoft IIS, Envoy та Cloudflare Pingora. Розробники NGINX уже випустили захисне оновлення версії 1.29.8 з новою директивною обмежень max_headers, а для Apache випущено виправлення в модулі mod_http2 версії 2.0.41, тоді як для інших систем офіційні патчі на момент публікації все ще перебувають у стадії розробки.