CVE-2026-49098
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
Podatność w komponencie Apache Camel Kafka umożliwia atakującemu nadpisanie docelowego tematu Kafka za pomocą nagłówka `kafka.OVERRIDE_TOPIC` w żądaniu HTTP. Brak walidacji wejścia i neutralizacji specjalnych elementów w nagłówkach powoduje, że w trasach łączących konsumenta HTTP z producentem Kafka, dowolny klient HTTP może przekierować wiadomość do dowolnego tematu Kafka, w tym wrażliwych wewnętrznych tematów. Problem dotyczy wersji Apache Camel od 4.0.0 do 4.14.7, od 4.15.0 do 4.18.2 oraz od 4.19.0 do 4.20.0.
Ocena ryzyka
Organizacja narażona jest na nieautoryzowane przekierowanie wiadomości do wrażliwych tematów Kafka, co może prowadzić do wycieku danych, manipulacji danymi lub ataków na krytyczne usługi downstream. Atak nie wymaga uwierzytelnienia, jeśli konsument HTTP jest nieuwierzytelniony.
Rekomendacja
Należy niezwłocznie zaktualizować Apache Camel do wersji 4.21.0 (lub 4.14.8 dla LTS 4.14.x, lub 4.18.3 dla 4.18.x). Jeśli aktualizacja nie jest możliwa, należy dodać filtrowanie nagłówków `kafka.*` na początku trasy przed producentem Kafka, np. za pomocą `removeHeaders('kafka.*')`.
Inne podatności w Apache Camel
Zobacz wszystkie- CVE-2015-5348Wysokie
Apache Camel w wersjach od 2.6.x do 2.14.x, 2.15.x przed 2.15.5 oraz 2.16.x przed 2.16.1, przy użyciu camel-jetty lub camel-servlet jako konsumentów w trasach Camel, umożliwia zdalnym atakującym wykonanie dowolnych poleceń za pomocą spreparowanego zserializowanego obiektu Java w żądaniu HTTP.
- CVE-2014-0002Wysokie
Komponent XSLT w Apache Camel przed wersją 2.11.4 oraz 2.12.x przed wersją 2.12.3 umożliwia zdalnym atakującym odczyt dowolnych plików oraz potencjalnie inne nieokreślone skutki poprzez dokument XML zawierający deklarację zewnętrznego bytu w połączeniu z odniesieniem do bytu, co jest związane z problemem XML External Entity (XXE).
- CVE-2026-71300Krytyczne
Podatność w Apache Camel Atmosphere Websocket component wynika z nieprawidłowej walidacji nagłówków Exchange, które nie należą do przestrzeni nazw Camel (websocket.connectionKey, websocket.connectionKey.list, websocket.sendToAll, websocket.eventType, websocket.errorType). Zewnętrzny atakujący może dostarczyć nagłówek listy przez HTTP i przejąć decyzję o routingu wiadomości do WebSocket, co może prowadzić do pominięcia lub przekierowania powiadomień do innego klienta.
- CVE-2026-66906Krytyczne
Podatność typu Relative Path Traversal w komponencie Apache Camel Azure Storage Blob umożliwia zapis pliku poza skonfigurowanym katalogiem podczas operacji downloadBlobToFile. Nazwa blobu z segmentami katalogu nadrzędnego nie jest normalizowana, co pozwala na nadpisanie dowolnego pliku w systemie plików z uprawnieniami procesu Camel.
- CVE-2026-56140Krytyczne
W komponencie Apache Camel AWS SNS wykryto brak filtra dla nagłówków przychodzących w strategii Sns2HeaderFilterStrategy. Podatność nie jest jednak osiągalna, ponieważ komponent jest wyłącznie produkcyjny (nie obsługuje konsumentów), więc atakujący nie może dostarczyć zewnętrznych atrybutów wiadomości do Camel Exchange. Mimo to dodano filtr defensywny dla spójności z innymi strategiami.
- CVE-2026-53913Krytyczne
W komponencie camel-keycloak Apache Camel wykryto podatność polegającą na pomijaniu weryfikacji tokena dostępu w domyślnej konfiguracji. Gdy wymagane role lub uprawnienia są puste, token nie jest weryfikowany kryptograficznie, co pozwala na dostęp do chronionych tras z dowolnym nagłówkiem Authorization.
- CVE-2026-48205Krytyczne
Podatność w komponencie DNS Apache Camel umożliwia atak SSRF poprzez nieprawidłową walidację nagłówków wiadomości. Atakujący może ustawić nagłówki dns.server, dns.name i dns.domain w żądaniu HTTP, co prowadzi do przekierowania zapytań DNS na kontrolowany serwer i ujawnienia wewnętrznych nazw hostów.
- CVE-2026-48204Krytyczne
Podatność w Apache Camel w komponencie mongodb-gridfs pozwala atakującemu na manipulację operacjami GridFS poprzez nagłówki HTTP. Brak walidacji wejścia i kontroli dostępu umożliwia nieautoryzowane usuwanie, odczyt lub wyliczanie plików oraz wstrzykiwanie operatorów NoSQL.
- CVE-2026-48203Krytyczne
Podatność w komponencie Apache Camel Solr umożliwia ataki typu SSRF oraz wstrzykiwanie parametrów i pól do zapytań Solr. Nagłówki Exchange z prefiksami SolrParam. i SolrField. są przekazywane bez filtrowania z żądań HTTP do producenta Solr, co pozwala atakującemu na manipulację zapytaniami i dokumentami indeksowanymi.
- CVE-2026-46456Krytyczne
Podatność w komponencie AWS2-SQS Apache Camel pozwala atakującemu na wstrzyknięcie nagłówków kontrolnych Camel (np. CamelHttpUri, CamelFileName) poprzez wiadomości SQS. Brak filtrowania przychodzących nagłówków w Sqs2HeaderFilterStrategy umożliwia modyfikację zachowania producentów w trasie Camel.
Oryginalny opis (angielski, źródło NVD)
Improper Input Validation, Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') vulnerability in Apache Camel Kafka Component. The camel-kafka producer can override its configured target topic at runtime from the kafka.OVERRIDE_TOPIC Exchange header: KafkaProducer.evaluateTopic() returns the header value in preference to the topic configured on the endpoint. The control-header constants in KafkaConstants (for example OVERRIDE_TOPIC = kafka.OVERRIDE_TOPIC, OVERRIDE_TIMESTAMP = kafka.OVERRIDE_TIMESTAMP, PARTITION_KEY = kafka.PARTITION_KEY) used plain, non-Camel-prefixed values. camel-kafka's own KafkaHeaderFilterStrategy does filter the kafka.* namespace, but only on the Kafka-to-Exchange serialization boundary (reading Kafka record headers into the Exchange, and writing Exchange headers into a Kafka record); it does not apply to headers that arrive from an upstream consumer in a multi-component route. The upstream HTTP consumer uses HttpHeaderFilterStrategy, which blocks only the Camel / camel namespace, so a kafka.* header passes through unfiltered. As a result, in a route that bridges an HTTP consumer (for example platform-http) into a kafka: producer, any HTTP client could set the kafka.OVERRIDE_TOPIC header and cause the message to be published to an arbitrary Kafka topic instead of the configured one - redirecting it to a sensitive internal topic, or injecting attacker-crafted messages into a topic consumed by a critical downstream service. The related kafka.OVERRIDE_TIMESTAMP and kafka.PARTITION_KEY headers could likewise be injected to backdate messages or target specific partitions. No credentials are required when the bridging consumer is unauthenticated. This issue affects Apache Camel: from 4.0.0 before 4.14.8, from 4.15.0 before 4.18.3, from 4.19.0 before 4.21.0. Users are recommended to upgrade to version 4.21.0, which fixes the issue. If users are on the 4.14.x LTS releases stream, then they are suggested to upgrade to 4.14.8. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.3. After upgrading, routes that set or read Kafka headers via the raw header names must use the CamelKafka* names (for example CamelKafkaOverrideTopic and CamelKafkaTopic) instead of the old kafka.* values. For deployments that cannot upgrade immediately, strip the kafka.* headers from any untrusted ingress before the kafka: producer (for example removeHeaders('kafka.*') at the start of the route), and set the target topic from a trusted source.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

