CVE-2026-48206
MEDIUM(5.3)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
- CVSS 5.3 — Mittel
Erwähnungen (letzte 60 Tage)
EPSS-Score
0.6%
Exploit-Wahrscheinlichkeit (30 Tage)
CVSS Score
5.3
Technische Schwere
Beschreibung
Improper Input Validation, Authorization Bypass Through User-Controlled Key vulnerability in Apache Camel JIRA component. The camel-jira producers read their operation parameters - the issue key, project key, transition id, summary, type, assignee, components, watchers, link type, work-log minutes and others - from Exchange message headers. The header constants defined in JiraConstants (for example ISSUE_KEY = IssueKey, ISSUE_PROJECT_KEY = ProjectKey, ISSUE_TRANSITION_ID = IssueTransitionId, LINK_TYPE = linkType) used plain, non-Camel-prefixed values. Because these names do not start with the Camel / camel prefix, HttpHeaderFilterStrategy - which blocks only the Camel header namespace on the HTTP boundary - let them pass from an inbound HTTP request straight into the Exchange. In a route that bridges an HTTP consumer (for example platform-http) into a jira: producer, any HTTP client could therefore supply these headers and override the values the route intended, driving JIRA operations against the configured JIRA instance with the endpoint's configured service-account credentials - for example deleting or transitioning an arbitrary issue (via IssueKey / IssueTransitionId), creating an issue in a different project (via ProjectKey), modifying issue fields, adding or removing watchers, or logging work. The operations are bounded by what the configured service account is permitted to do. No credentials are required from the attacker 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 drive JIRA operations via the raw header names must use the CamelJira* names (for example CamelJiraIssueKey) instead of the old values. For deployments that cannot upgrade immediately, strip the camel-jira control headers from any untrusted ingress before the jira: producer (for example removing the IssueKey, ProjectKey, IssueTransitionId and related headers at the start of the route), and set the required JIRA operation parameters from a trusted source.
Erkennung & Indikatoren
Ausnutzung
In den geprüften Quellen nicht genannt
Behobene Versionen
- 4.14.8
- 4.18.3
- 4.21.0
Threat-Hunting-Queries
Diese Schwachstelle betrifft Apache Camel-Anwendungen, die den JIRA-Komponenten-Producer verwenden und HTTP-Anfragen in JIRA-Operationen überbrücken. Die Detektion konzentriert sich auf ungewöhnliche HTTP-Header, die JIRA-Operationen steuern könnten, insbesondere wenn sie nicht mit 'Camel' präfixiert sind und auf JIRA-spezifische Parameter abzielen. Die genaue Implementierung hängt stark von der s
Sentinel/Defender KQL
let jira_headers = dynamic(['IssueKey', 'ProjectKey', 'IssueTransitionId', 'summary', 'type', 'assignee', 'components', 'watchers', 'linkType', 'work-log minutes']);
HttpRequests
| where Url contains "jira:" // Annahme: JIRA-Producer-Endpunkt im URL erkennbar
| where isnotempty(RequestHeaders)
| extend ParsedHeaders = parse_json(RequestHeaders)
| mv-expand ParsedHeaders
| where ParsedHeaders.Key in (jira_headers) and not(ParsedHeaders.Key startswith 'Camel') and not(ParsedHeaders.Key startswith 'camel')
| project TimeGenerated, ClientIp, RequestMethod, Url, ParsedHeaders.Key, ParsedHeaders.Value, UserAgent, RefererSplunk SPL
sourcetype=apache_camel_logs (uri=*jira:*) (http_headers=*IssueKey* OR http_headers=*ProjectKey* OR http_headers=*IssueTransitionId* OR http_headers=*linkType*)
| rex field=http_headers "(?<header_name>[^=,]+)=(?<header_value>[^,]+)"
| where NOT header_name LIKE "Camel%" AND NOT header_name LIKE "camel%"
| table _time, clientip, method, uri, header_name, header_value, useragentSigma
title: Apache Camel JIRA Header Bypass Attempt
status: experimental
description: Detects attempts to bypass HTTP header filtering in Apache Camel JIRA component by using non-Camel-prefixed JIRA control headers.
logsource:
product: web
service: access_logs
detection:
selection:
uri|contains: 'jira:'
http_headers|contains:
- 'IssueKey'
- 'ProjectKey'
- 'IssueTransitionId'
- 'linkType'
condition: selection
filter:
http_headers|startswith:
- 'Camel'
- 'camel'
falsepositives:
- Legitimate internal applications that explicitly use these headers (after upgrade)
level: mediumElastic ES|QL
FROM logs
| WHERE event.dataset == "apache.camel.access"
| WHERE url.path LIKE "%jira:%"
| WHERE http.request.headers.IssueKey IS NOT NULL OR http.request.headers.ProjectKey IS NOT NULL OR http.request.headers.IssueTransitionId IS NOT NULL OR http.request.headers.linkType IS NOT NULL
| WHERE NOT (http.request.headers.IssueKey LIKE "Camel%" OR http.request.headers.IssueKey LIKE "camel%" OR
http.request.headers.ProjectKey LIKE "Camel%" OR http.request.headers.ProjectKey LIKE "camel%" OR
http.request.headers.IssueTransitionId LIKE "Camel%" OR http.request.headers.IssueTransitionId LIKE "camel%" OR
http.request.headers.linkType LIKE "Camel%" OR http.request.headers.linkType LIKE "camel%")
| SELECT @timestamp, source.ip, http.request.method, url.original, http.request.headers, user_agent.originalSecBoard-generated · behavioral · requires customization — Von SecBoard erzeugt und nicht in einer Zielumgebung validiert. Vor dem Einsatz an die eigene Protokollierung anpassen.
Indikatoren
Datei-Hashes (3)
- 3240a174a3707ba2b1d893c4ac0880829e0c9233
- 024704f95f16d1260304054088fa0b34acb57ebf
- 6863ea624605ab3fa8827c43a4c5df333f767dc4
Übernommen wurden nur Indikatoren, die wörtlich in einer Hersteller- oder Research-Quelle standen.
GitHub Advisories
Apache Camel-JIRA: A set of non-Camel-prefixed Exchange header constants bypass the HTTP header filter