Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-71300 — PoC-репродуктор для инъекции заголовка диспетчеризации Apache Camel camel-atmosphere-websocket (CVE-2026-71300), демонстрирующий, как внедрённый заголовок может перенаправлять WebSocket-сообщения получателю, выбранному атакующим. | Kitploit
Инструменты/GitHubGitHub/oscerd/cve-2026-71300
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСтатьи и ИсследованияОбучение и Образование
GitHuboscerd/cve-2026-71300

CVE-2026-71300

PoC-репродуктор для инъекции заголовка диспетчеризации Apache Camel camel-atmosphere-websocket (CVE-2026-71300), демонстрирующий, как внедрённый заголовок может перенаправлять WebSocket-сообщения получателю, выбранному атакующим.

Репозиторий
9 ч 12 мин назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-71300 — инъекция заголовка диспетчеризации camel-atmosphere-websocket

Рабочий proof-of-concept репродуктор уязвимости Apache Camel, в которой производитель camel-atmosphere-websocket выбирает получателей WebSocket из заголовков Exchange websocket.*, имена которых находятся вне пространства имён Camel — поэтому HTTP HeaderFilterStrategy (который удаляет только Camel* / camel*) пропускает их, и внешний отправитель может перехватить решение производителя о диспетчеризации.

Скачать инструмент
Среда выполненияКаталогСтек
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-atmosphere-websocket 4.18.2

Camel Quarkus: расширения camel-quarkus-atmosphere-websocket не существует, поэтому этот компонент нельзя запустить на Camel Quarkus — репродуктор работает только на Spring Boot.

Что демонстрирует

Маршрут соединяет HTTP-потребитель с производителем atmosphere-websocket, доставляя каждое HTTP-сообщение одному закреплённому получателю WebSocket («жертве») путём установки самого заголовка websocket.connectionKey. Но WebsocketProducer.process проверяет списочный заголовок websocket.connectionKey.list раньше, чем заголовок с одним ключом, и это точечное имя не входит в пространство имён Camel, поэтому HTTP-фильтр заголовков не удаляет его. Инжектированный заголовок websocket.connectionKey.list таким образом проходит из запроса в Exchange и переопределяет закреплённого получателя — сообщение, предназначенное жертве, доставляется на выбранное атакующим соединение вместо этого.

root@kitploit:~
POST /notify ──► setHeader(websocket.connectionKey = victim) ──► atmosphere-websocket producer ──► victim peer
   │                                                                        ▲
   └─ injected header  websocket.connectionKey.list: <attacker key>  ───────┘  (tested first → wins)

О тестовом стенде. Среда выполнения atmosphere WebSocket нуждается в обновлении WebSocket сервлетного контейнера и собственной инициализации фреймворка, которые невозможно запустить из обычного автономного приложения Spring Boot. Поэтому этот репродуктор задействует реальную логику диспетчеризации WebsocketProducer через реальный HTTP-вход — только два подключённых пира являются заглушками, зарегистрированными напрямую в WebSocketStore конечной точки (как atmosphere-фреймворк зарегистрировал бы реальные браузерные соединения). Обход фильтра заголовков и приоритет диспетчеризации производителя — сама уязвимость — проверяются по-настоящему.

root@kitploit:~
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

Ожидаемый вывод на уязвимой сборке:

root@kitploit:~
1) Benign POST /notify (no injected header):
     victim received:   [hello for the victim]
     attacker received: []
2) Injected POST /notify with header 'websocket.connectionKey.list: attacker-connection-key':
     victim received:   []
     attacker received: [private data meant for the victim, ...]
>>> PROVEN: ... delivering a message meant for the victim to an attacker-chosen WebSocket connection instead: true

Сводка уязвимости

СвойствоЗначение
Компонентcamel-atmosphere-websocket (camel-atmosphere-websocket-starter)
CWECWE-20 (Некорректная проверка входных данных) → CWE-74 (Инъекция)
Вектор атакиИнжектированный заголовок websocket.connectionKey.list (или websocket.connectionKey / websocket.sendToAll) в запросе, направляемом в производитель atmosphere-websocket
ВоздействиеПерехват решения производителя о диспетчеризации — доставка произвольным пирам WebSocket или удержание сообщений от них
Затронутые версииС 4.0.0 до 4.14.9, с 4.15.0 до 4.18.4, с 4.19.0 до 4.22.0
Исправленные версии4.14.9, 4.18.4, 4.22.0
JIRACAMEL-24359
АвторBarak Srour (Apiiro)

Бюллетень: https://camel.apache.org/security/CVE-2026-71300.html

Исправление

Константы заголовков диспетчеризации были переименованы в пространство имён Camel — CamelAtmosphereWebsocketConnectionKey, CamelAtmosphereWebsocketConnectionKeyList, CamelAtmosphereWebsocketSendToAll — поэтому HTTP HeaderFilterStrategy удаляет их на транспортной границе, и внешний отправитель больше не может их инжектировать. Связанный путь WebSocket в camel-undertow рассматривается в CVE-2026-78329.

Отказ от ответственности

Этот репозиторий опубликован в образовательных и защитных целях: помочь пользователям Apache Camel понять уязвимость, проверить, затронуты ли они, и подтвердить, что обновление устраняет её. Не используйте этот материал против систем, которыми вы не владеете и которые не эксплуатируете.