
CVE-2026-24880: действительно ли рекомендации Apache по обновлению применимы к вашему Tomcat? Определяет исправление по наличию класса, а не по сравнению версий. Охватывает ветки 7.0/8.0/8.5/9.0/10.0/10.1/11.0.
CVE-2026-24880 · GHSA-563x-q5rq-57qp — фраза Apache
upgrade to version 11.0.20, 10.1.52 or 9.0.116 применима к вам?
Для большинства — нет, и существует четыре разных способа, которыми она не применима. Этот инструмент сканирует ваши артефакты и сообщает, какой из них ваш.
java -jar tomcat-line-check.jar /path/to/tomcat # распакованный Tomcat
java -jar tomcat-line-check.jar app.war # war
java -jar tomcat-line-check.jar app.jar # Spring Boot fat jar
java -jar tomcat-line-check.jar --table # только таблица решений по семи линиям
java -jar tomcat-line-check.jar --utf8 ... # если в консоли Windows иероглифы
unzip -l tomcat-coyote-<ver>.jar | grep ChunkExtension
Есть org/apache/tomcat/util/http/parser/ChunkExtension.class = исправление присутствует; нет = исправление отсутствует.
🔴 Этот инструмент не сравнивает номера версий, чтобы определить, исправлено ли — потому что сами номера версий и есть источник ошибки в этом CVE.
Таблица решений генерируется tools/gen_table.py из первоисточников; если семь групп утверждений не проходят, таблица не выдаётся.
| Линия | Финальная версия | EOL | Исправление есть | Выход |
|---|---|---|---|---|
| 7.0 | 7.0.109 | 2021-03-31 | нет | ❌ 7.0.110 = 404 |
| 8.0 | 8.0.53 | 2018-06-30 | нет | ❌ 8.0.54 = 404 |
| 8.5 | 8.5.100 | 2024-03-31 | нет | ❌ 8.5.101 = 404 |
| 10.0 | 10.0.27 | 2022-10-31 | нет | ❌ 10.0.28 = 404 |
| 9.0 | 9.0.121 | 2027-03-31 | 9.0.115 нет | ✅ 9.0.116 |
| 10.1 | 10.1.59 | не EOL | 10.1.52 нет | ✅ 10.1.53 |
| 11.0 | 11.0.25 | не EOL | 11.0.18 нет | ✅ 11.0.20 |
① Вы на линии 8.5 / 7.0 / 8.0 — ни одна из трёх указанных версий не относится к вашей линии,
а ваша линия уже прекратила выпуск (8.5.101 / 7.0.110 / 8.0.54 — все 404 на Maven Central).
8.0 — особый случай: официально она помечена как unknown, даже вопрос «затронуты ли вы» остаётся без ответа.
② Вы на линии 10.1 — официально вам велено обновиться до 10.1.52, а в самом 10.1.52 исправления нет.
В предыдущем абзаце того же уведомления 10.1.0-M1 through 10.1.52 указаны как затронутые.
Собственный security-10.html Apache
относит этот CVE к разделу 10.1.53; в compare 10.1.52...10.1.53 действительно содержится исправляющий commit f07df938.
→ Обновление по этой фразе равносильно отсутствию обновления.
③ Вы на линии 10.0 — в официальном уведомлении 10.0. встречается 0 раз.
Её нет ни в списке затронутых, ни в двух unknown; оба диапазона GitHub advisory
(>= 7.0.0, < 9.0.116 и >= 10.1.0-M1, < 10.1.52) её тоже не покрывают.
А члены ChunkedInputFilter в 10.0.27 дословно совпадают с 7.0.109 / 8.5.100, 10.0.28 — 404.
→ Ни один источник не ответил, затронута ли 10.0.
④ Вы используете Dependabot / OSV — GitHub advisory сжимает 7.0/8.5/9.0 в один диапазон,
first_patched_version = 9.0.116, и машина велит пользователям 8.5 обновиться до 9.0.116.
Это другая мажорная линия, а не патч.
low(GitHub advisory — high / CVSS 7.5).
Оба числа приведены здесь, без выбора более выгодного для себя.1b586d6(9.0)· f07df938(10.1)· fde1a82(11.0)python tools/gen_table.py --dry # только утверждения, без записи файла
python tools/gen_table.py # запись LineTable.java только после прохождения всех утверждений
Утверждения охватывают: позитивные (9.0.116 / 10.1.53 / 11.0.20 должны содержать класс исправления), негативные (9.0.115 / 10.1.52 не должны), ключевое утверждение (в официальной рекомендации указан именно 10.1.52), линии EOL, отсутствие выхода (следующая версия после финальной должна быть 404), сторожевой тест (несуществующая версия должна быть 404, доказывая, что сам критерий 404 не сломан), отсутствие 10.0.
mvn package # требуется JDK 17; ноль зависимостей во время выполнения
Apache-2.0