Назад к тренду дня: PHP обновил веб-инструменты для Windows, закрыв брешь, через которую можно было запустить код
Рейтинг Poly · из тренда дня

Топ-10 библиотек на C, незаметно работающих в основе веб-серверов, 2026

У Brotli в записях всего две уязвимости декодера, но одна из них, CVE-2026-111497 (оценка 9,8 по CVSS 3.1), заставила Node.js, .NET, пакеты Python и сборки PHP для Windows выпустить исправления в одну и ту же неделю октября.

  • №1: OpenSSL
  • 10 мест

01Итоговый список

Ведущие ИИ независимо составили свои списки из десяти мест. Сверху — один итог, который легко проверить: у каждого места есть причина, список ИИ, которые его включили, и источник, если ИИ его дали.

Порядок: от большего согласия ИИ к меньшему.

Яркая плашка — этот ИИ включил пункт в свой список. Тусклая — не включил.

  1. 1

    OpenSSL

    Библиотека TLS, которая входит в состав PHP, Node.js, Python и .NET. OpenCVE насчитывает 330 CVE (другие базы называют 296 или 229), самая известная из них — Heartbleed. Ни один источник не измеряет её точную долю в вебе.

    Включили: Meta, Grok, Gemini, Nova, StepFun, Kimi, DeepSeek, Qwen. Не включили: ChatGPT, Wenxin.

    В их списках: Meta: см. список · Grok: см. список · Gemini: см. список · Nova: 1 · StepFun: см. список · Kimi: см. список · DeepSeek: см. список · Qwen: см. список

    Что отметил каждый ИИ 8
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • Gemini

      В его списке названо иначе: откройте весь список.

      см. список
    • Novaместо 1

      Криптографическая основа веба, обрабатывает TLS/SSL для 67% HTTPS-сайтов, но страдает от повторяющихся ошибок порчи памяти.

    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    8 ИИ поставили сюда
  2. 2

    Brotli (libbrotli)

    CVE у неё немного, но одна ошибка в декодере, CVE-2026-111497, сразу заставила выпустить исправления в Node.js, .NET, Python и PHP. Оценка — 9,8 по CVSS 3.1, 9,2 по версии 4.0 и 8,1 у Microsoft и Red Hat.

    Включили: ChatGPT, Meta, Grok, Gemini, Nova, StepFun, Kimi, Wenxin. Не включили: DeepSeek, Qwen.

    В их списках: ChatGPT: 1 · Meta: 7 · Grok: 2 · Gemini: 5 · Nova: 4 · StepFun: 2 · Kimi: 2 · Wenxin: 3

    Что отметил каждый ИИ 8
    • ChatGPTместо 1

      Одна ошибка декодера попала в экосистемы Node.js, Python, .NET и PHP, и в указанной записи ей присвоен CVSS 3.1 9.8.

    • Metaместо 7

      CVSS 9,2, CVE-2026-111497: запись за границами буфера в c/dec/decode.c версий 1.0.3–1.2.0 — на 5% лучше zstd, сжатие 290 МБ/с, распаковка 425 МБ/с, но сложные префиксные деревья

      Источник ↗
    • Grokместо 2

      По-прежнему самый плотный победитель для статичного веба (на 15–35% меньше gzip), но запись за границами буфера в декодере в октябре 2026 года (CVE-2026-111497, CVSS 9,2) показала, почему сложные конечные автоматы становятся главной поверхностью атаки.

      Источник ↗
    • Geminiместо 5

      Достигает беспрецедентного сокращения текста в 3,65 раза благодаря статическому словарю на 122 КБ, но подвергло входящие среды выполнения экстренному патчингу удалённой порчи памяти.

      Источник ↗
    • Novaместо 4

      Компрессор Google с высокой степенью сжатия, теперь печально известный CVE-2026-111497, который позволяет удалённое выполнение кода через повреждённые потоки.

    • StepFunместо 2

      Лучшая степень сжатия в живом вебе — и единственный кодек, в декодере которого в октябре 2026 года нашли ошибку удалённого выполнения кода.

    • Kimiместо 2

      Лучшая степень сжатия веб-текста (на 15–20% меньше gzip) — и, начиная с этой недели, открытый без аутентификации RCE в декодере (CVE-2026-111497).

    • Wenxinместо 3

      Встроенный статический словарь на 120 КБ даёт хорошее сжатие текста, но теперь несёт публичный PoC для критической записи за границами буфера 2026 года

      Источник ↗
    8 ИИ поставили сюда
  3. 3

    zlib

    Стандартный путь сжатия gzip в PHP, Node.js, nginx, Python и curl. OpenCVE насчитывает 19 CVE. Самая опасная, CVE-2022-37434 (переполнение кучи в inflate()), получает 9,8 в NVD, но 7,3 у IBM.

    Включили: Meta, Grok, Gemini, Nova, StepFun, Kimi, DeepSeek, Qwen. Не включили: ChatGPT, Wenxin.

    В их списках: Meta: 2 · Grok: 3 · Gemini: 6 · Nova: 2 · StepFun: 9 · Kimi: 3 · DeepSeek: 3 · Qwen: 5

    Что отметил каждый ИИ 8
    • Metaместо 2

      Его используют 82% сайтов по данным W3Techs — распаковка 390 МБ/с, простой LZ77+Хаффман, за десятилетие лишь одно крупное переполнение кучи, CVE-2022-37434

    • Grokместо 3

      Универсальный запасной вариант, который всё ещё поставляется в каждом браузере и HTTP-стеке; зрелый, но через десятилетия всё ещё накапливает CVE на переполнение кучи.

    • Geminiместо 6

      Удваивает скорость распаковки стандартного DEFLATE до 850 МБ/с благодаря векторизации AVX2, сохраняя строгую обратную совместимость с RFC 1951.

      Источник ↗
    • Novaместо 2

      Повсеместно распространённая библиотека сжатия, на которой работают gzip и deflate, с многолетней историей уязвимостей чтения за пределами буфера и переполнений.

    • StepFunместо 9

      Прямая замена zlib, которая заметно быстрее — и имеет собственный короткий, но реальный список CVE.

      Источник ↗
    • Kimiместо 3

      Основа, которую понимает каждый клиент: 93,4% сайтов сжимают ответы, и почти все эти байты заканчиваются в 30-летней функции inflate().

    • DeepSeekместо 3

      Интернет по умолчанию на протяжении трёх десятилетий: степень сжатия 2,743× и декодирование 390 МБ/с, но 14–19 CVE делают его самым атакуемым веб-кодеком в истории.

    • Qwenместо 5

      30-летний хребет HTTP, который обменивает огромный, хорошо задокументированный каталог целочисленных переполнений на универсальную совместимость.

      Источник ↗
    8 ИИ поставили сюда
  4. 4

    libxml2

    Разбирает недоверенный XML внутри PHP DOM, Python lxml и Ruby Nokogiri. Число CVE у неё — от 101 до 133, в зависимости от базы. CVE-2025-49796 (порча памяти) получила 9,1.

    Включили: Meta, Grok, Gemini, Nova, StepFun, Kimi, DeepSeek, Qwen. Не включили: ChatGPT, Wenxin.

    В их списках: Meta: см. список · Grok: см. список · Gemini: см. список · Nova: 5 · StepFun: см. список · Kimi: см. список · DeepSeek: см. список · Qwen: см. список

    Что отметил каждый ИИ 8
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • Gemini

      В его списке названо иначе: откройте весь список.

      см. список
    • Novaместо 5

      XML-парсер для PHP, Python и Ruby с историческими проблемами переполнения буфера при раскрытии сущностей и обработке буферов.

      Источник ↗
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    8 ИИ поставили сюда
  5. 5

    libcurl

    Входит в расширение curl для PHP и в pycurl. NVD оценил переполнение кучи в SOCKS5 (CVE-2023-38545) в 9,8, однако сопровождающий curl говорит, что с 2021 года проект опубликовал только две уязвимости с высокой степенью опасности.

    Включили: Meta, Grok, Gemini, StepFun, Kimi, DeepSeek, Wenxin, Qwen. Не включили: ChatGPT, Nova.

    В их списках: Meta: см. список · Grok: см. список · Gemini: см. список · StepFun: см. список · Kimi: см. список · DeepSeek: см. список · Wenxin: см. список · Qwen: см. список

    Что отметил каждый ИИ 8
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • Gemini

      В его списке названо иначе: откройте весь список.

      см. список
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Wenxin

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    8 ИИ поставили сюда
  6. 6

    PCRE2

    Движок регулярных выражений, на котором работают функции preg_* в PHP и блоки location в nginx. У PCRE2 19 CVE, у всего семейства PCRE — 66. Одна ошибка JIT, CVE-2022-1587, — чтение за границами буфера, оценка 9,1.

    Включили: ChatGPT, Meta, Grok, Gemini, StepFun, Kimi, DeepSeek, Qwen. Не включили: Nova, Wenxin.

    В их списках: ChatGPT: 6 · Meta: см. список · Grok: см. список · Gemini: см. список · StepFun: см. список · Kimi: см. список · DeepSeek: см. список · Qwen: см. список

    Что отметил каждый ИИ 8
    • ChatGPTместо 6

      Движок регулярных выражений может стоять за безобидно выглядящим полем формы и превращать текст, подконтрольный атакующему, в нагрузку для нативного разбора.

      Источник ↗
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • Gemini

      В его списке названо иначе: откройте весь список.

      см. список
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    8 ИИ поставили сюда
  7. 7

    SQLite

    Входит в PHP, Python и Node.js. OpenCVE насчитывает 87 CVE, но JFrog называет более 50 из них шумом, созданным языковыми моделями. Настоящая уязвимость 2026 года: запись в кучу в FTS5 (CVE-2026-11822/11824).

    Включили: Meta, Grok, Gemini, StepFun, Kimi, DeepSeek, Wenxin, Qwen. Не включили: ChatGPT, Nova.

    В их списках: Meta: см. список · Grok: см. список · Gemini: см. список · StepFun: см. список · Kimi: см. список · DeepSeek: см. список · Wenxin: см. список · Qwen: см. список

    Что отметил каждый ИИ 8
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • Gemini

      В его списке названо иначе: откройте весь список.

      см. список
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Wenxin

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    8 ИИ поставили сюда
  8. 8

    libpng

    Декодирует каждую загруженную PNG-картинку, которую обрабатывают PHP GD и Python Pillow. Один пакет исправлений в конце 2025 года закрыл пять CVE, в том числе переполнения кучи (от CVE-2025-64505 до CVE-2025-66293).

    Включили: ChatGPT, Meta, Grok, DeepSeek, Wenxin, Qwen. Не включили: Gemini, Nova, StepFun, Kimi.

    В их списках: ChatGPT: 7 · Meta: см. список · Grok: см. список · DeepSeek: см. список · Wenxin: см. список · Qwen: см. список

    Что отметил каждый ИИ 6
    • ChatGPTместо 7

      Обработка изображений часто происходит автоматически в конвейерах загрузки, службах миниатюр и системах управления контентом, вне основного кода разработчика.

      Источник ↗
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Wenxin

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    6 ИИ поставили сюда
  9. 9

    libjpeg-turbo

    Декодер JPEG, на котором работают Pillow, GD и sharp, поэтому через него проходит каждая загрузка аватарки. OpenCVE насчитывает 17 CVE, в том числе CVE-2018-14498 — чтение за границами кучи, которое вызывает специально подготовленный JPEG.

    Включили: ChatGPT, Meta, Grok, StepFun, DeepSeek, Qwen. Не включили: Gemini, Nova, Kimi, Wenxin.

    В их списках: ChatGPT: 9 · Meta: см. список · Grok: см. список · StepFun: см. список · DeepSeek: см. список · Qwen: см. список

    Что отметил каждый ИИ 6
    • ChatGPTместо 9

      Один сервис обработки изображений может принимать двоичные данные, подконтрольные атакующему, даже если его публичный API — это всего лишь конечная точка загрузки.

      Источник ↗
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • DeepSeek

      В его списке названо иначе: откройте весь список.

      см. список
    • Qwen

      В его списке названо иначе: откройте весь список.

      см. список
    6 ИИ поставили сюда
  10. 10

    libexpat

    XML-парсер в стандартной библиотеке Python. OpenCVE насчитывает 70 CVE (65 на другом зеркале), а один выпуск в июне 2026 года исправил 14 из них.

    Включили: Meta, Grok, StepFun, Kimi. Не включили: ChatGPT, Gemini, Nova, DeepSeek, Wenxin, Qwen.

    В их списках: Meta: см. список · Grok: см. список · StepFun: см. список · Kimi: см. список

    Что отметил каждый ИИ 4
    • Meta

      В его списке названо иначе: откройте весь список.

      см. список
    • Grok

      В его списке названо иначе: откройте весь список.

      см. список
    • StepFun

      В его списке названо иначе: откройте весь список.

      см. список
    • Kimi

      В его списке названо иначе: откройте весь список.

      см. список
    4 ИИ поставили сюда
    источник не указан

Тройка подробно ↓

02Подробнее о тройке

Рейтинг выше. Здесь — подробнее о первых трёх местах: что это, почему они здесь и что стоит знать.

Три продукта сравниваются по разным показателям: у OpenSSL и zlib — число уязвимостей (CVE), у Brotli — одна оценка серьёзности, которая тоже зависит от того, кто её ставит (9,8, 9,2 или 8,1). Трекеры расходятся в числе уязвимостей у OpenSSL (330, 296 или 229).

1OpenSSL

№ 1 — OpenSSL. В списках у 8 из 10 ИИ; медианное место там: 1. Он отвечает за шифрование TLS внутри PHP, Node.js, Python и .NET и имеет самую длинную историю ошибок, при которых портится память, включая Heartbleed.

А вы знали

  • Ошибку Heartbleed нашли дважды и независимо друг от друга. Нил Мехта из Google сообщил о ней разработчикам OpenSSL 1 апреля 2014 года. Компания Codenomicon нашла ту же брешь, улучшая свои инструменты тестирования, и называет дату 3 апреля 2014 года.

Что это
Главная библиотека TLS и шифрования, которая входит в PHP, Node.js, Python и .NET.
Чем сильнее
У неё записано гораздо больше уязвимостей CVE, чем у Brotli или zlib: 330 на OpenCVE.
Кому полезно знать
Полезно тем, кто хочет понять, почему код шифрования веб-серверов — одна из главных мишеней для атак.
  • Охват и уязвимости в памяти330 уязвимостей CVE на OpenCVE

Википедия · Wikidata

Почему он здесь
  • Когда Heartbleed стал публичным, считалось, что под угрозой около 17% доверенных защищённых веб-серверов интернета, примерно полмиллиона. Ошибочный код OpenSSL распространился с выпуском версии 1.0.1 14 марта 2012 года.

А вы знали
  • Ошибочный код Heartbleed попал в OpenSSL 31 декабря 2011 года: рецензент пропустил баг. В марте 2012 года он вышел в версии 1.0.1, так что ошибка пролежала в библиотеке больше двух лет, пока в апреле 2014 года Нил Мехта из Google не сообщил о ней.

История
  • В 2014 году, когда нашли ошибку Heartbleed, OpenSSL поддерживала горстка добровольцев, и только один из них работал над проектом полный рабочий день. Ежегодные пожертвования составляли около 2 000 долларов США. Ошибка находилась в коде с 2012 года.

Что важно учесть
  • Исследование 2020 года показало, что после Heartbleed число коммитов в месяц утроилось, а уязвимостей нашли и исправили 91. В нём также утверждается, что число уязвимостей — слабый способ судить о безопасности библиотеки.

Где узнать больше
  • Откройте список бюллетеней безопасности OpenSSL и сначала читайте самую свежую запись, проверяя, какие версии OpenSSL, по её словам, затронуты.

Сравнить первую тройку ↓

2Brotli (libbrotli)

№ 2 — Brotli (libbrotli). В списках у 8 из 10 ИИ; медианное место там: 2.5. Уязвимостей мало, но одна ошибка декодера заставила одновременно исправлять Node.js, .NET, Python и PHP.

А вы знали

  • Brotli содержит встроенный словарь из 13 504 слов на шести языках, а также строки, часто встречающиеся в вебе. Благодаря 120 преобразованиям, например добавлению приставок и окончаний или смене регистра букв, он может выразить 1 633 984 разных слова.

Что это
Библиотека сжатия от Google, которую веб-серверы и браузеры используют, чтобы уменьшать веб-страницы.
Чем сильнее
Одна ошибка, CVE-2026-111497, затронула сразу больше программных платформ, чем любая отдельная брешь у двух других.
Кому полезно знать
Полезно разработчикам знать, что каждая программа поставляется со своей копией декодера и требует собственного обновления.
  • Охват и уязвимости в памятиCVE-2026-111497, оценка CVSS 9,8

Википедия · Wikidata

Почему он здесь
  • Одна ошибка декодера Brotli, CVE-2026-111497, потребовала исправлений в Node.js, .NET, Bun, Envoy, Istio и пакетах Python. Google оценивает её в 9,2 (CVSS 4.0), а Red Hat и Microsoft — в 8,1.

  • Исправление попало в исходный код Brotli 27 февраля, но ни один выпуск его не включал до 21 октября. Исправления Node.js затем вышли сразу для трёх веток: 22.23.4, 24.22.1 и 26.12.1.

История
  • Инженеры Google Юрки Алакуйяла и Золтан Сабадка создали Brotli в 2013 году, чтобы уменьшать файлы веб-шрифтов WOFF. В сентябре 2015 года его сделали универсальным для сжатия по HTTP, чтобы веб-серверы и браузеры могли им пользоваться.

Что важно учесть
  • Эксперты расходятся в оценке того, насколько всё серьёзно. OpenAI описывает удалённое выполнение кода, но в уведомлении Microsoft для .NET его нет. Red Hat пишет, что надёжных публичных доказательств выполнения кода нет, а CISA отметила, что эксплуатации не было.

  • Каждая программа поставляется со своей копией декодера, поэтому каждую нужно обновлять отдельно. В Python программа может быть уязвимой просто после установки пакета Brotli. Node.js уязвим через fetch(), если ответ сервера сжат Brotli.

Где узнать больше
  • Откройте страницу проекта Brotli на сайте Google и сначала прочитайте описание, затем найдите RFC 7932 — спецификацию формата, которой следует библиотека.

ChatGPT поставили его первым. Что они в нём увидели
  • ChatGPT: Одна ошибка декодера попала в экосистемы Node.js, Python, .NET и PHP, и в указанной записи ей присвоен CVSS 3.1 9.8.

Сравнить первую тройку ↓

3zlib

№ 3 — zlib. В списках у 8 из 10 ИИ; медианное место там: 3. Это путь gzip по умолчанию в PHP, Node.js, nginx, Python и curl, но история ошибок у неё короче, чем у OpenSSL.

А вы знали

  • Марк Адлер написал код распаковки для zlib вместе с Жан-Лу Гайи, который написал сжатие. Адлер также работал над миссией НАСА Mars Exploration Rover, возглавив исследование концепции, которую позже выбрали для миссии 2003 года.

Что это
Старая универсальная библиотека, которая стоит за сжатием gzip в большинстве веб-программ.
Чем сильнее
Её самая серьёзная ошибка, CVE-2022-37434, — одно переполнение буфера в памяти, а список её CVE гораздо короче, чем у OpenSSL.
Кому полезно знать
Полезно тем, кто хочет понять, насколько большая часть веба держится на одной почти 30-летней библиотеке.
  • Охват и уязвимости в памяти19 уязвимостей CVE на OpenCVE

Википедия · Wikidata

История
  • Первая публичная версия zlib, 0.9, вышла 1 мая 1995 года. Изначально её задумали для библиотеки изображений libpng, а написали её Жан-Лу Гайи и Марк Адлер.

Сравнить первую тройку ↓

Тройка рядом

OpenSSLBrotli (libbrotli)zlib
В списках ИИ8 / 108 / 108 / 10
Охват и уязвимости в памяти330 уязвимостей CVE на OpenCVECVE-2026-111497, оценка CVSS 9,819 уязвимостей CVE на OpenCVE
Первым поставилиNovaChatGPT—

Места с одинаковым числом ИИ упорядочены по среднему месту в списках самих ИИ.

03Стоит знать

Что заметили ИИ, пока составляли список.

Одно расширение PHP, php_curl.dll, загружает пять нативных библиотек на C: libcrypto, libssl, brotlidec, libzstd и nghttp2.

Заметили:
Включили: Kimi. Не включили: ChatGPT, Meta, Grok, Gemini, Nova, StepFun, DeepSeek, Wenxin, Qwen.
Источник ↗

Ошибка Brotli достижима не на каждой установке. PHP сообщает, что автоматическая распаковка ответов в cURL по умолчанию выключена, а в документации .NET сказано, что уязвимость проявляется не всегда. Один из ИИ утверждает, что Guzzle включает её по умолчанию.

Заметили:
Включили: ChatGPT, Meta, Wenxin. Не включили: Grok, Gemini, Nova, StepFun, Kimi, DeepSeek, Qwen.
Источник ↗

Оценки опасности зависят от того, кто оценивает ошибку: CVE-2022-37434 в zlib получает 9,8 в NVD и 7,3 у IBM.

Заметили:
Включили: Kimi. Не включили: ChatGPT, Meta, Grok, Gemini, Nova, StepFun, DeepSeek, Wenxin, Qwen.
Источник ↗

Доля сайтов с известным серверным языком, на котором работает PHP, называется то 69,2%, то 69,3%, то примерно 73% и 75% — в зависимости от снимка и источника.

Заметили:
Включили: ChatGPT, Meta, Gemini, StepFun, Kimi. Не включили: Grok, Nova, DeepSeek, Wenxin, Qwen.
Источник ↗

04Как считали

Простыми словами, без формул.

1Вопрос

Топ-10 общих библиотек на C/C++, незаметно работающих в современных веб-средах

2Где это применимо

безопасность серверных частей веба и сред выполнения приложений в мире

3На что смотрели

  • Глобальный охват в веб-серверах и движках серверных языков (PHP, Node.js, Python, .NET, Ruby)
  • Частота и серьёзность в истории уязвимостей порчи памяти без проверки подлинности (переполнения буфера, порча кучи, запись за границами буфера с оценкой CVSS 8.0 и выше)
  • W3Techs, обзоры веб-технологий — доля сайтов по серверным языкам (PHP — 69,2% сайтов с известным языком, 27 октября 2026) и по веб-серверам. Считаются сайты, а не установки библиотек.
  • OpenCVE — записи CVE по производителю или продукту (OpenSSL 330, libxml2 116, SQLite 87, libexpat 70, zlib 19, libjpeg-turbo 17)
  • Национальный институт стандартов и технологий, база данных уязвимостей (NVD) — отдельные записи CVE с их классом CWE (CWE-119/787/125) и оценкой CVSS
  • Страницы безопасности сопровождающих (curl, SQLite, OpenSSL) — собственная история CVE и оценок опасности каждого проекта, которая часто расходится с оценками NVD

4Кто ставил места

Ведущие ИИ: ChatGPT, Meta, Grok, Gemini, Nova, StepFun, Kimi, DeepSeek, Wenxin, Qwen. Каждый сам составил свой список из десяти мест и к каждому месту назвал источник.

5Как сведены места

Одно и то же, названное разными ИИ по-разному, считали за одно. Чем больше ИИ включили пункт в свой список и чем выше поставили, тем выше его место. «Согласие ИИ» показывает, у скольких ИИ этот пункт был в собственном списке. Источники — только те, что нашли сами ИИ, ничего не добавлено вручную.

05Список каждого ИИ отдельно

🇺🇸 ChatGPT10 мест · заметок: 2

Тот же вопрос, ответ одного ИИ — ChatGPT. Итоговый список выше объединяет все ИИ.

  1. 1
    Декодер Brotli на C

    Одна ошибка декодера попала в экосистемы Node.js, Python, .NET и PHP, и в указанной записи ей присвоен CVSS 3.1 9.8.

  2. 2
    zlib и DEFLATE

    Рабочая лошадка сжатия за gzip имеет десятилетия применения, и даже небольшой дефект декодера может распространиться по множеству программных стеков.

    Источник ↗
  3. 3
    OpenSSL: libcrypto и libssl

    Общая криптографическая зависимость может превратить одну ошибку разбора или управления памятью в риск для TLS-серверов, клиентов и встроенных приложений.

    Источник ↗
  4. 4
    libcurl

    Библиотека, созданная для удобного сетевого доступа, сама может стать границей с недоверенными данными, если включена автоматическая распаковка ответов.

    Источник ↗
  5. 5
    libxml2

    XML-парсеры сочетают сложные грамматики входных данных с обработкой потенциально недоверенных документов, поэтому укрепление парсера важно, даже если приложение написано на языке с управляемой памятью.

  6. 6
    Библиотека регулярных выражений PCRE2

    Движок регулярных выражений может стоять за безобидно выглядящим полем формы и превращать текст, подконтрольный атакующему, в нагрузку для нативного разбора.

    Источник ↗
  7. 7
    libpng

    Обработка изображений часто происходит автоматически в конвейерах загрузки, службах миниатюр и системах управления контентом, вне основного кода разработчика.

    Источник ↗
  8. 8
    Oniguruma, совместимая с PCRE

    Управляемая объектная модель Ruby не делает безопасной по памяти каждую нативную расширение или нативную реализацию регулярных выражений.

    Источник ↗
  9. 9
    libjpeg-turbo

    Один сервис обработки изображений может принимать двоичные данные, подконтрольные атакующему, даже если его публичный API — это всего лишь конечная точка загрузки.

    Источник ↗
  10. 10
    libarchive

    Распаковка архивов превращает компактные байты, присланные атакующим, во множество имён файлов, полей метаданных и распакованных буферов за одну операцию.

    Источник ↗

Что заметил ChatGPT

Уязвимость нативной библиотеки может повторяться в описаниях продуктов, но это не делает её несколькими самостоятельными первопричинами. Учитывайте уникальные CVE отдельно от затронутых продуктов.

Безопасный по памяти код приложения не может предотвратить запись за границами буфера внутри нативного декодера. В инвентаризации зависимостей нужно учитывать встроенные двоичные файлы, вендорные исходники и статически связанные копии.

🇺🇸 Meta10 мест · заметок: 2

Тот же вопрос, ответ одного ИИ — Meta. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd) 1.5.7

    Сжатие 510 МБ/с, распаковка 1550 МБ/с при степени сжатия 2,896 — в 5 раз быстрее gzip, со степенью выше и почти без критических CVE в истории

    Источник ↗
  2. 2
    zlib (gzip/DEFLATE) 1.3.1

    Его используют 82% сайтов по данным W3Techs — распаковка 390 МБ/с, простой LZ77+Хаффман, за десятилетие лишь одно крупное переполнение кучи, CVE-2022-37434

  3. 3
    LZ4 1.10.0

    Распаковка 3850 МБ/с — самый быстрый декодер на периферии веба, степень сжатия 2,101, формат кадров настолько прост, что в записях нет ни одной CVE с удалённой эксплуатацией

    Источник ↗
  4. 4
    Snappy 1.2.1

    Распаковка 1500 МБ/с — значение по умолчанию для gRPC от Google, пропускает Хаффмана для сырых литералов, жертвуя степенью сжатия 2,089 ради минимального конечного автомата

    Источник ↗
  5. 5
    LZO1X 2.10

    Распаковка 780 МБ/с, степень сжатия 2,106 — декодер с ультранизким потреблением памяти из 1996 года, всё ещё находится в initramfs Linux, поверхность для целочисленных переполнений мала

  6. 6
    Deflate (сырой, RFC1951)

    То же ядро, что у gzip, без 18-байтовой обёртки — те же 105 МБ/с сжатие и 390 МБ/с распаковка, используется в HTTP deflate, поверхность атаки = zlib минус парсер заголовка

  7. 7
    Brotli 1.2.0 (br)

    CVSS 9,2, CVE-2026-111497: запись за границами буфера в c/dec/decode.c версий 1.0.3–1.2.0 — на 5% лучше zstd, сжатие 290 МБ/с, распаковка 425 МБ/с, но сложные префиксные деревья

    Источник ↗
  8. 8
    LZMA / xz 5.6

    Самая высокая степень сжатия, примерно на 30% выше gzip, но распаковка в 20 раз медленнее, а CVE-2024-3094 с закладкой в xz показала риск конечных автоматов

  9. 9
    bzip2 1.0.8

    Преобразование Барроуза — Уилера плюс Хаффман, в 200 раз медленнее LZ4, степень сжатия около 1,15× от gzip — история удалённого выполнения кода короткая, но бомба распаковки всё ещё возможна

  10. 10
    LZW / compress (.Z)

    Словарный рост 1970-х без энтропийной стадии — степень сжатия 0,9× от gzip, патент истёк, парсер тривиальный, но в современном вебе почти не используется

    Источник ↗

Что заметил Meta

zstd на уровне -1 даёт 510 МБ/с сжатия и 1550 МБ/с распаковки против 105/390 у gzip и 290/425 у brotli на том же i7-9700K, Silesia — в 5 раз быстрее gzip при степени сжатия 2,896 против 2,743

GZIP всё ещё главный: по данным W3Techs, 82% всех отслеживаемых сайтов используют GZIP, а по состоянию на октябрь 2026 года 93,4% используют какое-либо сжатие, поэтому поверхность атаки zlib универсальна, хотя код самый простой

🇺🇸 Grok10 мест

Тот же вопрос, ответ одного ИИ — Grok. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd)

    Распаковывает со скоростью 1+ ГБ/с и не уступает brotli среднего уровня по степени сжатия, требуя при этом малой доли процессорного времени, поэтому выигрыш в последних 10% полосы становится дешёвым, а не экспоненциальным.

  2. 2
    Brotli

    По-прежнему самый плотный победитель для статичного веба (на 15–35% меньше gzip), но запись за границами буфера в декодере в октябре 2026 года (CVE-2026-111497, CVSS 9,2) показала, почему сложные конечные автоматы становятся главной поверхностью атаки.

    Источник ↗
  3. 3
    gzip / zlib deflate

    Универсальный запасной вариант, который всё ещё поставляется в каждом браузере и HTTP-стеке; зрелый, но через десятилетия всё ещё накапливает CVE на переполнение кучи.

  4. 4
    LZ4

    Чрезвычайно высокая скорость распаковки (часто более 3 ГБ/с) ценой самой слабой степени сжатия; идеален, когда задержка важнее полосы.

    Источник ↗
  5. 5
    Snappy

    Конструкция Google, в которой скорость важнее всего, всё ещё встречается во многих путях RPC и хранения; степень сжатия намеренно принесена в жертву ради предсказуемо низкой нагрузки на процессор при декодировании.

    Источник ↗
  6. 6
    XZ / LZMA

    Самая высокая степень сжатия для текста, но распаковка медленнее на порядок; сложность исторически давала меньше удалённых CVE в вебе просто потому, что её редко используют для незащищённых HTTP-нагрузок.

  7. 7
    LZO

    Всё ещё встречается во встроенных системах и в некоторых файловых системах; степень сжатия и скорость находятся между gzip и LZ4, а публичных CVE меньше.

  8. 8
    bzip2

    Устаревший выбор с высокой степенью сжатия, который почти не используют для кодирования живых веб-ответов, потому что и сжатие, и распаковка слишком медленны для современного HTTP.

  9. 9
    deflate (сырой / в стиле PNG)

    То же семейство алгоритмов, что и у gzip, но без заголовка; всё ещё основа многих форматов изображений и архивов, которые веб-среды должны разбирать.

  10. 10
    lzma2 (вариант XZ)

    Немного гибче классического LZMA, но всё ещё относится к углу «максимальная степень сжатия, минимальная скорость», от которого веб-протоколы в основном отказались.

🇺🇸 Gemini10 мест · заметок: 2

Тот же вопрос, ответ одного ИИ — Gemini. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (Zstd)

    Декодирует веб-текст со скоростью более 1 200 МБ/с на ядро и избегает поверхности атаки статического словаря, которая мучила конкурирующие кодеки.

    Источник ↗
  2. 2
    LZ4

    Делает ставку на потоковую передачу с выравниванием по байтам, чтобы достичь распаковки 4 500 МБ/с, а парсер настолько компактен, что устойчив к порче памяти через состояние парсера.

    Источник ↗
  3. 3
    Gzip / DEFLATE

    Обеспечивает 47,1% сжатого веб-трафика и тридцать лет непрерывного бинарного фаззинга, несмотря на потолок декодирования 350 МБ/с.

    Источник ↗
  4. 4
    Snappy

    Полностью отказывается от таблиц энтропийного кодирования Хаффмана переменной длины, гарантируя декодирование по сети за микросекунды ценой передачи на 15% больше данных.

    Источник ↗
  5. 5
    Brotli

    Достигает беспрецедентного сокращения текста в 3,65 раза благодаря статическому словарю на 122 КБ, но подвергло входящие среды выполнения экстренному патчингу удалённой порчи памяти.

    Источник ↗
  6. 6
    Zlib-ng

    Удваивает скорость распаковки стандартного DEFLATE до 850 МБ/с благодаря векторизации AVX2, сохраняя строгую обратную совместимость с RFC 1951.

    Источник ↗
  7. 7
    LZO

    Первым в 1996 году применил разбор кольцевого буфера в реальном времени, но целочисленное переполнение в 2014 году показало, что старый C-код распаковки без поддержки редко стареет безопасно.

    Источник ↗
  8. 8
    Bzip2

    Использует преобразование Барроуза — Уилера, чтобы эффективно сжимать текст, но сдерживает входящие серверы недопустимо низкой скоростью распаковки 38 МБ/с.

    Источник ↗
  9. 9
    XZ / LZMA2

    Даёт исключительную степень сжатия 4,10× для структурированных ресурсов, но требует до 64 МБ памяти состояния распаковки на каждое входящее соединение.

  10. 10
    Deflate64

    Расширил скользящее окно DEFLATE до 64 КБ, добавив заковыристые граничные случаи парсинга и не дав при этом выигрыша в пропускной способности, которую дают современные потоковые кодеки.

Что заметил Gemini

Погоня за последними 10% сокращения полезной нагрузки между DEFLATE (3,12×) и Brotli (3,65×) требует предопределённого словаря на 122 КБ и многоуровневых динамических таблиц Хаффмана, что увеличило сложность состояния эталонного C-парсера более чем на 400%.

Finite State Entropy (FSE), которое используется в Zstandard, достигает дробной точности в битах, как арифметическое кодирование, при распаковке более 1,2 ГБ/с на ядро, доказывая, что высокое сжатие не требует небезопасной сложности парсинга.

🇺🇸 Nova5 мест

Тот же вопрос, ответ одного ИИ — Nova. Итоговый список выше объединяет все ИИ.

  1. 1
    OpenSSL

    Криптографическая основа веба, обрабатывает TLS/SSL для 67% HTTPS-сайтов, но страдает от повторяющихся ошибок порчи памяти.

  2. 2
    zlib

    Повсеместно распространённая библиотека сжатия, на которой работают gzip и deflate, с многолетней историей уязвимостей чтения за пределами буфера и переполнений.

  3. 3
    nghttp2

    Реализация HTTP/2, которую используют Cloudflare и Nginx, страдает от ошибок порчи кучи в управлении потоками.

  4. 4
    Brotli

    Компрессор Google с высокой степенью сжатия, теперь печально известный CVE-2026-111497, который позволяет удалённое выполнение кода через повреждённые потоки.

  5. 5
    libxml2

    XML-парсер для PHP, Python и Ruby с историческими проблемами переполнения буфера при раскрытии сущностей и обработке буферов.

    Источник ↗
🇨🇳 StepFun10 мест · заметок: 3

Тот же вопрос, ответ одного ИИ — StepFun. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd, RFC 8878)

    Единственный кодек верхнего уровня для веба, в эталонном C-декодере которого никогда не было CVE на порчу памяти.

    Источник ↗
  2. 2
    Brotli (RFC 7932)

    Лучшая степень сжатия в живом вебе — и единственный кодек, в декодере которого в октябре 2026 года нашли ошибку удалённого выполнения кода.

  3. 3
    gzip / DEFLATE (zlib, RFC 1952)

    Всё ещё сжимает 60% JavaScript в вебе против 29% у Brotli — и опирается на 30-летнюю функцию inflate() с 19 CVE за плечами.

  4. 4
    LZ4

    Распаковывает со скоростью порядка ГБ/с на ядро, а его декодер достаточно мал, чтобы проверить его за один день — если вы можете смириться со степенью сжатия.

    Источник ↗
  5. 5
    Snappy

    250 МБ/с на входе, 500 МБ/с на выходе — и степень сжатия на 20–100% хуже gzip, что и стало причиной, по которой он проиграл вебу.

  6. 6
    Zopfli

    Добавляет последние 3–8% плотности DEFLATE ценой примерно в 100 раз большей стоимости сжатия — и добавляет ровно ноль поверхности атаки декодера.

    Источник ↗
  7. 7
    LZMA / xz (liblzma)

    Лучшая универсальная степень сжатия в наборе — и единственный, в чьи эталонные архивы намеренно попала закладка.

  8. 8
    bzip2

    Формат времён 2009 года, всё ещё находящийся в стандартной библиотеке Python, чья функция BZ2_decompress писала за границами буфера до 2019 года.

  9. 9
    zlib-ng

    Прямая замена zlib, которая заметно быстрее — и имеет собственный короткий, но реальный список CVE.

    Источник ↗
  10. 10
    LZO (liblzo2)

    Четыре CVE за один день 2014 года, все — целочисленные переполнения в декодере серий литералов: поучительная история «быстрого» кодека.

Что заметил StepFun

Кривая внедрения и кривая эффективности указывают в противоположные стороны: доля Brotli на мобильных страницах выросла с 28% до 37% между 2023 и 2024 годами, но gzip всё ещё сжимает 60% ответов JavaScript против 29% у Brotli — большая часть веба так и не перешла на лучший кодек.

На базовом уровне разрыв в скорости не мал: zstd сжимает со скоростью 510 МБ/с против 290 у Brotli и 105 у gzip, а распаковывает со скоростью 1 550 МБ/с против 425 у Brotli — поэтому CDN всё чаще выбирают zstd для динамического контента и Brotli только для заранее сжатых статичных ресурсов.

Самая острая критика Brotli состоит не в том, что он плохо сжимает, а в том, что всё его преимущество — это «уродливый хак», жёстко заданный словарь; и даже это утверждение оспаривается: комментаторы сообщают, что Brotli всё равно выигрывает в веб-сжатии при обнулённом словаре.

🇨🇳 Kimi10 мест

Тот же вопрос, ответ одного ИИ — Kimi. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd, RFC 8878)

    Обходит gzip по степени сжатия (на ~10–15% меньше), декодируя при этом примерно в 2 раза быстрее Brotli — без единой CVE на порчу памяти в декодере.

    Источник ↗
  2. 2
    Brotli (RFC 7932)

    Лучшая степень сжатия веб-текста (на 15–20% меньше gzip) — и, начиная с этой недели, открытый без аутентификации RCE в декодере (CVE-2026-111497).

  3. 3
    DEFLATE / zlib (gzip)

    Основа, которую понимает каждый клиент: 93,4% сайтов сжимают ответы, и почти все эти байты заканчиваются в 30-летней функции inflate().

  4. 4
    Zopfli (Google)

    Оптимизатор DEFLATE только для кодирования: он выигрывает в степени сжатия без новой поверхности атаки в декодере, потому что каждый клиент и так декодирует его выход.

    Источник ↗
  5. 5
    LZ4

    Самый быстрый декодер в списке — и его одна известная ошибка памяти (CVE-2021-3520) была целочисленным переполнением в одном вызове memmove().

    Источник ↗
  6. 6
    Snappy (Google)

    Фирменный кодек LevelDB и MongoDB: самая чистая история уязвимостей C++ здесь, за которую расплатились самой слабой степенью сжатия.

  7. 7
    xz / LZMA (liblzma)

    Лучшая степень сжатия после Brotli — но его декодер постоянно находит новые классы ошибок, а самая тяжёлая его CVE (10.0) пришла от сопровождающего, а не из математики.

  8. 8
    bzip2 (преобразование Барроуза — Уилера)

    Запись за границами буфера 2019 года получила оценку 9,8 «критическая» в NVD и 4,4 в Red Hat — чистейший пример того, что «плотность уязвимостей» — это вопрос выставленной оценки.

  9. 9
    LZW (compress из Unix)

    Единственная запись, снятая с рассмотрения юристами, а не из-за ошибки памяти: патент Unisys (US 4,558,302) истёк 20 июня 2003 года — уже после того, как веб перешёл с GIF на PNG.

    Источник ↗
  10. 10
    Общий Brotli (Compression Dictionary Transport)

    Передний край: общие словари для каждого сайта дают повторным посетителям степени сжатия уровня Brotli-плюс с наименее «фаззингованным» конечным автоматом декодера в вебе.

    Источник ↗
🇨🇳 DeepSeek10 мест · заметок: 2

Тот же вопрос, ответ одного ИИ — DeepSeek. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd) 2026

    Распаковывает со скоростью 1 550 МБ/с, сравнявшись по степени сжатия с Brotli — редкий случай, когда более быстрый декодер является также более простой поверхностью атаки.

    Источник ↗
  2. 2
    Brotli 2026

    Лучшая в классе степень сжатия веб-текста (2,883) только что породила запись за границами буфера с CVSS 9,2 в его эталонном C-декодере — образцовый пример аргумента о снижающейся отдаче.

    Источник ↗
  3. 3
    gzip / DEFLATE (zlib) 2026

    Интернет по умолчанию на протяжении трёх десятилетий: степень сжатия 2,743× и декодирование 390 МБ/с, но 14–19 CVE делают его самым атакуемым веб-кодеком в истории.

  4. 4
    LZ4 2026

    Распаковка в несколько ГБ/с делает его королём пропускной способности, но степень сжатия около 2,1× стоит примерно на 25% больше байтов, чем у zstd, — зато его C-декодер имеет гораздо меньше CVE.

    Источник ↗
  5. 5
    XZ / LZMA2 2026

    Самая высокая степень сжатия в таблице (3,43×), но распаковка идёт со скоростью 35 МБ/с, а он получил закладку в цепочке поставок с CVSS 10.0 — максимум сжатия, максимум риска.

  6. 6
    bzip2 2026

    Сжатие сортировкой блоков даёт высокую степень для текста, но распаковывает медленно и имеет длинный хвост CVE с целочисленными переполнениями и записями за границами буфера.

  7. 7
    Snappy 2026

    Вариант LZ77 от Google ставит скорость выше степени сжатия; основная C++-библиотека легковесна, но Java-привязки недавно породили переполнения кучи с CVSS 7.5+.

    Источник ↗
  8. 8
    LZO 2026

    Создан для распаковки в реальном времени: LZO выдаёт 217 МБ/с при степени сжатия 2,64×, но почти не имеет веб-истории CVE — рабочая лошадка с малой поверхностью атаки.

  9. 9
    DEFLATE (сырой) 2026

    Сырой поток RFC 1951 — самый простой из возможных веб-кодеков, но без CRC-обёртки gzip он наследует 19 CVE истории inflate из zlib.

    Источник ↗
  10. 10
    LZMA (alone) 2026

    SDK LZMA даёт степень сжатия уровня xz без контейнера .xz, но его декодер самый медленный в этом списке и разделяет со xz сложную поверхность атаки конечного автомата.

Что заметил DeepSeek

Сложность Brotli даёт примерно на 5% лучшую степень сжатия веб-текста, чем gzip, но его декодер только что породил CVE-2026-111497, запись за границами буфера с CVSS 9,2, достижимую через автоматическую распаковку HTTP. Предельный выигрыш теперь измеряется поверхностью атаки.

Распаковщик LZ4 на порядки быстрее xz (218 МБ/с в бенчмарке SquashFS против 35 МБ/с у xz), но платит за это степенью сжатия 2,12× против 3,43× — полезная нагрузка на 62% больше. Самый быстрый кодек не самый эффективный по пропускной способности.

🇨🇳 Wenxin10 мест · заметок: 1

Тот же вопрос, ответ одного ИИ — Wenxin. Итоговый список выше объединяет все ИИ.

  1. 1
    Zstandard (zstd)

    Сжатие в 5 раз быстрее, распаковка в 4 раза быстрее, чем у zlib, при сопоставимых быстрых настройках и чуть лучшей степени сжатия, без встроенного статического словаря, который раздувает поверхность атаки

    Источник ↗
  2. 2
    Gzip

    Универсальный запасной вариант для веба с десятилетиями публичного фаззинг-тестирования, покрывающего почти все тривиальные ошибки порчи памяти

    Источник ↗
  3. 3
    Brotli

    Встроенный статический словарь на 120 КБ даёт хорошее сжатие текста, но теперь несёт публичный PoC для критической записи за границами буфера 2026 года

    Источник ↗
  4. 4
    Deflate

    Сырая спецификация DEFLATE, на которой работает gzip, без дополнительной HTTP-обёртки, поэтому не добавляет лишней поверхности парсинга

    Источник ↗
  5. 5
    LZ4

    Оптимизирован для распаковки почти в памяти построчно, ставит скорость выше максимальной степени сжатия для задач с малой задержкой

    Источник ↗
  6. 6
    Snappy

    Низкосложный алгоритм от Google, созданный так, чтобы не допускать сложности на стороне декодера, которая ведёт к ошибкам безопасности памяти

    Источник ↗
  7. 7
    LZF

    Минимальная C-реализация менее чем на 2000 строк кода, с минимальной структурной сложностью парсинга для HTTP

  8. 8
    LZMA

    Чрезвычайно высокая максимальная степень сжатия ценой экспоненциальной сложности распаковки и очень низкой пропускной способности

  9. 9
    Bzip2

    Алгоритм на основе преобразования Барроуза — Уилера, редко используемый в современном вебе из-за низкой скорости и отсутствия активной поддержки безопасности

  10. 10
    DEFLATE64

    Расширенный вариант DEFLATE с большими окнами, который вводит дополнительную логику состояний без стандартной поддержки в HTTP

    Источник ↗

Что заметил Wenxin

При сопоставимых быстрых настройках Zstandard распаковывает почти в 4 раза быстрее zlib при немного лучшей степени сжатия, подтверждает бенчмарк 2026 года

🇨🇳 Qwen10 мест · заметок: 2

Тот же вопрос, ответ одного ИИ — Qwen. Итоговый список выше объединяет все ИИ.

  1. 1
    LZ4

    Распаковывает со скоростью оперативной памяти, а конечный автомат настолько прост, что почти не попадает в сканеры уязвимостей.

  2. 2
    Zstandard (Zstd)

    Инженерный шедевр Facebook: сочетает скорость распаковки, близкую к LZ4, со степенью сжатия лучше gzip.

    Источник ↗
  3. 3
    Snappy

    Компрессор Google, в котором скорость важнее всего: он жертвует степенью сжатия ради чистой пропускной способности распаковки и держит логику парсера предельно простой.

  4. 4
    Brotli

    Главный рабочий инструмент веба для статичных ресурсов, пока сложный парсер словаря не вызвал в октябре 2026 года RCE-уязвимости PHP2Shell и HTTP2Shell.

  5. 5
    Deflate (zlib)

    30-летний хребет HTTP, который обменивает огромный, хорошо задокументированный каталог целочисленных переполнений на универсальную совместимость.

    Источник ↗
  6. 6
    Gzip

    Всего 10-байтовый заголовок поверх Deflate, который наследует каждую историческую ошибку порчи памяти своего базового движка.

    Источник ↗
  7. 7
    LZMA / XZ

    Достигает впечатляющих степеней сжатия, строя огромные автоматы словарей, которые, как известно, в 2024 году впустили закладку в цепочку поставок.

    Источник ↗
  8. 8
    Bzip2

    Преобразование Барроуза — Уилера математически элегантно, но вычислительно тяжело и в значительной мере оставлено современными веб-стандартами.

    Источник ↗
  9. 9
    LZFSE

    Проприетарный энергоэффективный кодек Apple даёт отличную автономность на мобильных устройствах, но вводит непрозрачную логику состояний вне стандартного открытого веба.

    Источник ↗
  10. 10
    Zopfli

    Диковинка, только для кодирования: часами сжимает файл, чтобы выдать стандартные данные Deflate, и не даёт никаких выгод для безопасности при распаковке.

    Источник ↗

Что заметил Qwen

Zstd и LZ4 показывают, что для отличной веб-производительности не нужна экспоненциальная сложность парсинга; простые производные LZ77 с побайтовой организацией поддерживают высокую пропускную способность при минимальной поверхности атаки на память.

Снижение отдачи реально: XZ и LZMA дают лучшие степени сжатия, но требуют таких огромных автоматов словарей, что становятся главной мишенью атак через цепочку поставок и порчи памяти.