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

Топ-10 бібліотек на C, що мовчки живлять вебсередовища, 2026

У Brotli на обліку лише два CVE декодера, але один із них, 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) — і, станом на цей тиждень, віддалене виконання коду в декодері без автентифікації (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+Huffman, за десятиліття лише одне велике переповнення купи, 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). Бази вразливостей розходяться в кількості CVE для 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.
Кому корисно знати
Корисно тим, хто хоче зрозуміти, чому код шифрування веб-сервера є одним із головних об'єктів атак.
  • Охоплення і CVE: помилки пам'яті330 CVE на OpenCVE

Вікіпедія · Wikidata

Чому він тут
  • Коли Heartbleed стала відомою, вважали, що під загрозою опинилося близько 17% довірених захищених веб-серверів інтернету, приблизно півмільйона. Вразливий код поширився разом із випуском 1.0.1 14 березня 2012 року.

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

Історія
  • У 2014 році, коли знайшли помилку Heartbleed, OpenSSL підтримували кілька волонтерів, і лише один із них працював на повну ставку. Щорічні пожертви становили близько 2 000 доларів США. Помилка була в коді з 2012 року.

Що варто врахувати
  • Дослідження 2020 року показало, що після Heartbleed кількість змін у коді на місяць потроїлася, а 91 вразливість було знайдено й виправлено. У ньому також стверджується, що кількість вразливостей — слабкий спосіб оцінити, наскільки бібліотека безпечна.

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

Порівняти першу трійку ↓

2Brotli (libbrotli)

№ 2 — Brotli (libbrotli). У списках 8 з 10 ШІ; медіанне місце там: 2.5. Загалом CVE небагато, але одна помилка в декодері вимагала одночасних виправлень у Node.js, .NET, Python і PHP.

А ви знали

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

Що це
Бібліотека стиснення від Google, яку веб-сервери та браузери використовують, щоб зменшувати розмір веб-сторінок.
Чим сильніший
Одна помилка, CVE-2026-111497, зачепила більше середовищ виконання одразу, ніж будь-яка окрема помилка в двох інших.
Кому корисно знати
Корисно розробникам знати, що кожна програма постачається зі своєю копією декодера і потребує власного оновлення.
  • Охоплення і CVE: помилки пам'яті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 каже, що надійних публічних доказів виконання коду немає, а Агентство з кібербезпеки та безпеки інфраструктури зафіксувало відсутність експлуатації.

  • Кожна програма має власну копію декодера, тож оновлювати її треба окремо. У 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-річній бібліотеці.
  • Охоплення і CVE: помилки пам'яті19 CVE на OpenCVE

Вікіпедія · Wikidata

Історія
  • Перша публічна версія zlib, 0.9, вийшла 1 травня 1995 року. Спочатку її призначали для бібліотеки зображень libpng; написали її Жан-Лу Гайї та Марк Адлер.

Порівняти першу трійку ↓

Трійка поруч

OpenSSLBrotli (libbrotli)zlib
У списках ШІ8 / 108 / 108 / 10
Охоплення і CVE: помилки пам'яті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 Web Technology Surveys — частка сайтів за серверною мовою (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 МБ/с, розпакування 1 550 МБ/с, ступінь стиснення 2,896 — у 5 разів швидше за gzip, з вищим ступенем і майже без критичних CVE в історії

    Джерело ↗
  2. 2
    zlib (gzip/DEFLATE) 1.3.1

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

  3. 3
    LZ4 1.10.0

    Розпакування 3 850 МБ/с — найшвидший декодер на веб-периферії, ступінь стиснення 2,101, формат кадру настільки простий, що віддалено експлуатованих CVE на його рахунку немає

    Джерело ↗
  4. 4
    Snappy 1.2.1

    Розпакування 1 500 МБ/с — типовий вибір gRPC від Google; пропускає Huffman для сирих літералів, жертвуючи ступенем стиснення 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 разів повільніше; бекдор у xz 2024 року, CVE-2024-3094, показує ризик автоматів станів

  9. 9
    bzip2 1.0.8

    Burrows-Wheeler + Huffman, у 200 разів повільніше за LZ4, ступінь стиснення ~1,15× gzip — мало випадків віддаленого виконання коду, але бомба розпакування все ще можлива

  10. 10
    LZW / compress (.Z)

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

    Джерело ↗

Що помітив Meta

Zstd на рівні -1 досягає 510 МБ/с стиснення і 1 550 МБ/с розпакування проти 105/390 у gzip і 290/425 у brotli на тому самому i7-9700K, Silesia — у 5 разів швидше за gzip, ступінь стиснення 2,896 проти 2,743

GZIP досі лідирує: за W3Techs його використовують 82% усіх відстежуваних сайтів, а 93,4% використовують будь-яке стиснення станом на жовтень 2026 року, тож поверхня атаки 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)

    Найкращий універсальний степінь стиснення в наборі — і єдиний, що отримав навмисний бекдор у еталонних архівах tarball.

  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% менше), розпаковуючи приблизно вдвічі швидше за Brotli — з нульовими CVE пошкодження пам'яті в декодері.

    Джерело ↗
  2. 2
    Brotli (RFC 7932)

    Найкращий степінь стиснення вебу-тексту (на 15–20% менше за gzip) — і, станом на цей тиждень, віддалене виконання коду в декодері без автентифікації (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 (Unix compress)

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

    Джерело ↗
  10. 10
    Спільний Brotli (Compression Dictionary Transport)

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

    Джерело ↗
🇨🇳 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

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

  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 він успадковує історію inflate zlib з 19 CVE.

    Джерело ↗
  10. 10
    LZMA (alone) 2026

    LZMA SDK дає степінь класу 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 менш ніж на 2 000 рядків коду, з мінімальною структурною складністю парсингу для 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

    Важкоатлет статичних ресурсів вебу, доки складний парсер словника не спровокує помилки віддаленого виконання коду PHP2Shell і HTTP2Shell у жовтні 2026 року.

  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 дають кращі степені стиснення, але вимагають таких масивних автоматів словників, що стають головними цілями атак на ланцюг постачання та пошкоджень пам'яті.