Jetty
Уязвимости
47
Эксплуатируемые
1
Макс. CVSS
9.8
Макс. EPSS
0.99999
Распределение по критичности
Критический
4
Высокий
16
Средний
18
Низкий
9
Затронутые диапазоны версий
1.0–9.3.2910.0.0–10.0.1810.0.0–10.0.912.0.0–12.0.1712.0.0–12.0.327.0.0–9.2.28.v201904187.0.0–9.4.577.2.2–9.4.399.0.0–9.2.269.0.0–9.4.529.0.0–9.4.549.3.0–9.4.539.3.0–9.4.549.3.0–9.4.579.3.12–9.4.569.4.0–9.4.359.4.0–9.4.57.v202412199.4.0–9.4.589.4.0–9.4.609.4.0–9.4.89.4.21–9.4.529.4.32–9.4.399.4.37–9.4.439.4.7–9.4.36
Также сопоставлено как (исходные строки): jetty
Топ уязвимостей
CVE-2017-7658В Eclipse Jetty Server, версиях 9.2.x и более старых, 9.3.x (все конфигурации, отличные от HTTP/1.x) и 9.4.x (все конфигурации HTTP/1.x), когда представлены два заголовка content-lengths, Jetty игнорирует второй. Когда представлен content-length и заголовок chunked encoding, content-length игнорируется (согласно RFC 2616). Если посредник принял решение о более короткой длине, но все же передал более длинное тело, то содержимое тела могло быть интерпретировано Jetty как конвейерный запрос. Если посредник накладывал авторизацию, то поддельный конвейерный запрос обойдет эту авторизацию.
CVE-2017-7657В Eclipse Jetty, версиях 9.2.x и более старых, 9.3.x (все конфигурации) и 9.4.x (нестандартная конфигурация с включенным соответствием RFC2616), чанки transfer-encoding обрабатываются плохо. Анализ длины чанка был уязвим к переполнению целого числа. Таким образом, большой размер чанка мог быть интерпретирован как меньший размер чанка, и контент, отправленный как тело чанка, мог быть интерпретирован как конвейерный запрос. Если Jetty был развернут за посредником, который наложил некоторую авторизацию, и этот посредник позволял произвольно большим чанкам передаваться без изменений, то этот недостаток можно было использовать для обхода авторизации, наложенной посредником, поскольку поддельный конвейерный запрос не был бы интерпретирован посредником как запрос.
CVE-2016-4800Механизм нормализации пути в классе PathResource в Eclipse Jetty 9.3.x до версии 9.3.9 в Windows позволяет удаленным злоумышленникам обходить ограничения защищенных ресурсов и другие ограничения безопасности через URL-адрес с определенными экранированными символами, что связано с обратными слэшами.
CVE-2026-2332В Eclipse Jetty парсер HTTP/1.1 уязвим для запроса контрабанды при использовании расширений, аналогично методам «фанковых кусков», изложенным здесь:
* https://www://www.info/2025/06/18/funky-chunks.html
* https://w4ke.info/2025/10/29/funky-chunks-2.html
Jetty прекращает разбор расширения куска в \r\n внутри процитированных строк вместо того, чтобы рассматривать это как ошибку.
POST / HTTP/1.1
Ведущий: localhost
Трансфер-кодирование: chunked
1;ext="val
Икс
0
GET / контрабандный HTTP/1.1
...
Обратите внимание, как расширение куска не закрывает двойные котировки, и оно способно впрыснуть контрабандный запрос.
CVE-2025-5115В Eclipse Jetty версии <=9.4.57, <=10.0.25, <=11.0.25, <=12.0.21, <=12.1.0.alpha2, клиент HTTP/2 может затормозить сервер для отправки кадров RST_STREAM, например, путем отправки кадров, которые уроду или которые не должны быть отправлены в определенном состоянии потока, что вынуждает сервер потреблять такие ресурсы, как C.
Например, клиент может открыть поток, а затем отправить рамки WINDOW_UPDATE с инкрементом размера окна 0, что является незаконным.
По спецификации https://www.rfc-editor.org/rfc/rfc9113.html#name-window_update , сервер должен отправить RST_STREAM кадр.
Клиент теперь может открыть еще один поток и отправить еще один плохой WINDOW_UPDATE, что приводит к тому, что сервер потребляет больше ресурсов, чем необходимо, так как этот случай не превышает максимальное количество одновременных потоков, но клиент может создать огромное количество потоков за короткий промежуток времени.
Атака может быть выполнена с другими условиями (например, кадром DATA для замкнутого потока), которые заставляют сервер отправлять кадр RST_STREAM.
Ссылки:
* https://github.com/jetty/jetty.project/security/advisories/GHSA-mmxm-8w33-wc4h
CVE-2019-17638В Eclipse Jetty, версий с 9.4.27.v20200227 по 9.4.29.v20200521, в случае слишком больших заголовков ответа Jetty выдает исключение для создания ошибки HTTP 431. Когда это происходит, ByteBuffer, содержащий заголовки HTTP-ответа, дважды возвращается в ByteBufferPool. Из-за этого двойного освобождения два потока могут получить один и тот же ByteBuffer из пула, и пока поток1 собирается использовать ByteBuffer для записи данных ответа1, поток2 заполняет ByteBuffer другими данными. Затем поток1 приступает к записи буфера, который теперь содержит другие данные. Это приводит к тому, что клиент1, который отправил запрос1, видит данные из другого запроса или ответа, которые могут содержать конфиденциальные данные, принадлежащие клиенту2 (идентификаторы HTTP-сессий, учетные данные аутентификации и т. д.). Если версию Jetty невозможно обновить, уязвимость можно значительно уменьшить, настроив responseHeaderSize значительно больше, чем requestHeaderSize (responseHeaderSize 12 КБ и requestHeaderSize 8 КБ).
CVE-2026-1605В Eclipse Jetty, версии 12.0.0-12.0.31 и 12.1.0-12.0.5, класс GzipHandler обнажает уязвимость, когда сжатый HTTP-запрос с Content-Encoding: gzip обрабатывается, а соответствующий ответ не сжимается.
Это происходит потому, что JDK Inflater выделяется для декомпрессии запроса, но он не высвобождается, потому что механизм высвобождения привязан к сжатому ответу.
В этом случае, поскольку ответ не сжат, механизм высвобождения не запускается, вызывая утечку.
CVE-2025-1948В версиях Eclipse Jetty от 12.0.0 до 12.0.16 включительно HTTP/2-клиент может указать очень большое значение для параметра SETTINGS_MAX_HEADER_LIST_SIZE. Сервер Jetty HTTP/2 не выполняет проверку этого параметра и пытается выделить ByteBuffer указанного размера для кодирования HTTP-ответов, что, вероятно, приведет к возникновению OutOfMemoryError или даже завершению процесса JVM [1].
Источники:
- [1] https://github.com/jetty/jetty.project/security/advisories/GHSA-889j-63jv-qhr8
- [2] https://gitlab.eclipse.org/security/cve-assignement/-/issues/56
CVE-2024-22201Jetty - это веб-сервер и движок сервлетов на базе Java. HTTP/2 SSL-соединение, которое устанавливается и TCP-насыщено, будет утекать, когда оно истечет. Злоумышленник может заставить множество соединений оказаться в этом состоянии, и сервер может истощить дескрипторы файлов, в конечном итоге заставляя сервер перестать принимать новые соединения от действительных клиентов. Уязвимость исправлена в версиях 9.4.54, 10.0.20, 11.0.20 и 12.0.6.
CVE-2023-44487Протокол HTTP/2 допускает отказ в обслуживании (потребление ресурсов сервера), поскольку отмена запроса может быстро сбросить множество потоков, как это было использовано в реальных условиях с августа по октябрь 2023 года.
CVE-2023-36478Eclipse Jetty предоставляет веб-сервер и контейнер сервлетов. В версиях с 11.0.0 по 11.0.15, 10.0.0 по 10.0.15 и 9.0.0 по 9.4.52 произошло переполнение целого числа в `MetaDataBuilder.checkSize`, что позволяет значениям заголовков HTTP/2 HPACK превышать их ограничение по размеру. `MetaDataBuilder.java` определяет, превышает ли имя заголовка или значение пределы размера, и выбрасывает исключение, если предел превышен. Однако, когда длина очень велика и huffman истинна, умножение на 4 в строке 295 приведет к переполнению, и длина станет отрицательной. `(_size+length)` теперь будет отрицательным, и проверка в строке 296 не будет вызвана. Более того, `MetaDataBuilder.checkSize` позволяет введенным пользователем значение размера заголовка HPACK быть отрицательным, что потенциально приводит к очень большому выделению буфера позже, когда введенный пользователем размер умножается на 2. Это означает, что если пользователь предоставляет отрицательное значение длины (или, точнее, значение длины, которое, когда умножается на коэффициент подгонки 4/3, становится отрицательным), и это значение длины является очень большим положительным числом, когда умножается на 2, то пользователь может вызвать выделение очень большого буфера на сервере. Пользователи HTTP/2 могут подвергнуться удаленной атаке отказа в обслуживании. Проблема была исправлена в версиях 11.0.16, 10.0.16 и 9.4.53. Неизвестно ни одного обходного пути.
CVE-2022-2191В Eclipse Jetty версий с 10.0.0 по 10.0.9 и с 11.0.0 по 11.0.9 SslConnection не освобождает ByteBuffers из настроенного ByteBufferPool в случае путей кода ошибки.
CVE-2022-2048В реализации сервера Eclipse Jetty HTTP/2 при обнаружении недопустимого запроса HTTP/2 обработка ошибок имеет ошибку, которая может привести к неправильной очистке активных соединений и связанных с ними ресурсов. Это может привести к сценарию отказа в обслуживании, когда не остается достаточно ресурсов для обработки правильных запросов.
CVE-2021-28165В Eclipse Jetty с 7.2.2 по 9.4.38, с 10.0.0.alpha0 по 10.0.1 и с 11.0.0.alpha0 по 11.0.1 использование ЦП может достигать 100% при получении большого недопустимого TLS-кадра.
CVE-2017-7656В Eclipse Jetty, версиях 9.2.x и более старых, 9.3.x (все конфигурации) и 9.4.x (нестандартная конфигурация с включенным соответствием RFC2616), HTTP/0.9 обрабатывается плохо. Строка запроса в стиле HTTP/1 (т. е. метод, пробел, URI, пробел, версия), которая объявляет версию HTTP/0.9, была принята и обработана как запрос 0.9. Если развернуто за посредником, который также принял и пропустил версию 0.9 (но не действовал на нее), то отправленный ответ мог быть интерпретирован посредником как заголовки HTTP/1. Это можно было использовать для отравления кэша, если сервер позволял исходному клиенту генерировать произвольный контент в ответе.
CVE-2015-2080Код обработки исключений в Eclipse Jetty до 9.2.9.v20150224 позволяет удаленным злоумышленникам получать конфиденциальную информацию из памяти процесса через недопустимые символы в заголовке HTTP, также известен как JetLeak.
CVE-2009-5045Утечка информации Dump Servlet в jetty до версии 6.1.22.
CVE-2026-5795В Eclipse Jetty класс JASPIAuthenticator инициирует проверки аутентификации, которые устанавливают две переменные ThreadLocal.
По возвращении из первоначальных проверок существуют условия, которые вызывают досрочное возвращение из кода JASPIAuthenticator без очистки этих ThreadLocals.
Последующий запрос с использованием той же нити наследует значения ThreadLocal, что приводит к нарушению контроля доступа и эскалации привилегий.
CVE-2024-13009В версиях Eclipse Jetty от 9.4.0 до 9.4.56 буфер может быть некорректно освобожден при возникновении ошибки gzip при распаковке тела запроса. Это может привести к повреждению и/или случайному обмену данными между запросами.
Проблема была обнаружена в производственной среде с высоким объемом запросов. Использование настроенного GzipHandler, расширяющего GzipHandler от Jetty, и обход обработчика Jetty для определенных запросов позволили избежать проблемы. Рекомендуется отключить сжатие тела запроса или обновить Jetty до версии 9.4.57 или новее.
Источники:
- [1] https://gitlab.eclipse.org/security/cve-assignement/-/issues/48
- [2] https://github.com/jetty/jetty.project/security/advisories/GHSA-q4rv-gq96-w7c5
CVE-2020-27216В Eclipse Jetty версий с 1.0 по 9.4.32.v20200930, с 10.0.0.alpha1 по 10.0.0.beta2 и с 11.0.0.alpha1 по 11.0.0.beta2O в Unix-подобных системах временный каталог системы совместно используется всеми пользователями этой системы. Совместно размещенный пользователь может наблюдать за процессом создания временного подкаталога в общем временном каталоге и спешить завершить создание временного подкаталога. Если злоумышленник выиграет гонку, то у него будут права на чтение и запись в подкаталог, используемый для распаковки веб-приложений, включая их JAR-файлы WEB-INF/lib и JSP-файлы. Если какой-либо код когда-либо будет выполняться из этого временного каталога, это может привести к уязвимости повышения локальных привилегий.
CVE-2025-11143Парсер Jetty URI имеет некоторые ключевые отличия от других распространенных парсеров при оценке недействительных или необычных URI. Дифференциальное разбор URI в системах с использованием нескольких компонентов может привести к байпу безопасности. Например, компонент, который обеспечивает соблюдение черного списка, может интерпретировать URI иначе, чем тот, который генерирует ответ. По крайней мере, различательный разбор может разглашать детали реализации.
CVE-2024-8184Существует уязвимость безопасности в Jetty's ThreadLimitHandler.getRemote(), которая может быть использована неавторизованными пользователями для организации удаленной атаки типа «отказ в обслуживании» (DoS). Путем многократной отправки специально созданных запросов злоумышленники могут вызывать ошибки OutofMemory и исчерпывать память сервера.
CVE-2019-17632В Eclipse Jetty версий 9.4.21.v20190926, 9.4.22.v20191022 и 9.4.23.v20191118 генерация содержимого ответа об ошибке по умолчанию (в text/html и text/json Content-Type) не экранирует сообщения Exception в трассировках стека, включенных в вывод об ошибке.
CVE-2009-5046JSP Dump и Session Dump Servlet XSS в jetty до версии 6.1.22.
CVE-2018-12538В Eclipse Jetty версий с 9.4.0 по 9.4.8 при использовании предоставляемого Jetty FileSessionDataStore для постоянного хранения сведений о HttpSession злоумышленник может получить доступ/захватить другие HttpSession и даже удалить несопоставленные HttpSession, присутствующие в хранилище файловой системы для FileSessionDataStore.