CVE-2026-49099
Apache Camel Salesforce: Nicht mit „Camel“ präfixierte Exchange-Header-Konstanten umgehen den HTTP-Header-Filter und ermöglichen es einem HTTP-Client, das interne Verhalten zu beeinflussen
- Veröffentlicht
- 06.07.2026
- Aktualisiert
- 07.07.2026
- CNA zuweisen
- apache
- Beweise beobachtet
- 06.08.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:NNiedrig · nächste 30 Tage
- Perzentil
- 43,0 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Unzureichende Neutralisierung spezieller Elemente in der Ausgabe, die von einer nachgelagerten Komponente verwendet wird („Injection“), sowie Umgehung der Autorisierung durch benutzergesteuerte Schlüssel-Schwachstelle in der Apache Camel Salesforce-Komponente. Der camel-salesforce-Producer löst seine Operationsparameter – die SOQL-Abfrage, die SOSL-Suche, den Ziel-SObject-Namen und die Ziel-SObject-ID, die Apex-REST-URL und -Methode sowie die Apex-Abfrageparameter – aus den Exchange-Message-Headern auf, wobei der Header gegenüber dem auf dem Endpoint konfigurierten Wert bevorzugt gelesen wird (AbstractSalesforceProcessor.getParameter() liest zuerst den Header und verwendet die Endpoint-Konfiguration nur als Fallback). Die Steuer-Header-Konstanten in SalesforceEndpointConfig (zum Beispiel SOBJECT_QUERY = sObjectQuery, SOBJECT_SEARCH = sObjectSearch, SOBJECT_NAME = sObjectName, SOBJECT_ID = sObjectId, APEX_URL = apexUrl, APEX_METHOD = apexMethod sowie das Präfix apexQueryParam.) verwendeten einfache, nicht mit Camel-Präfix versehene Werte. Da diese Namen nicht mit dem Camel-/camel-Präfix beginnen, ließ HttpHeaderFilterStrategy – das an der HTTP-Grenze nur den Camel-Header-Namespace blockiert – sie von einer eingehenden HTTP-Anfrage direkt in den Exchange durch. In einer Route, die einen HTTP-Consumer (zum Beispiel platform-http) in einen salesforce:-Producer überbrückt, konnte daher jeder HTTP-Client diese Header setzen und das, was die Route beabsichtigte, überschreiben – indem er eine eigene SOQL-Abfrage oder SOSL-Suche bereitstellte, um Daten aus jedem SObject zu lesen, auf das der verbundene Salesforce-Benutzer zugreifen kann, den Ziel-SObject-Namen und die Ziel-SObject-ID für CRUD-Operationen überschrieb oder einen Apex-REST-Aufruf auf einen anderen Endpoint und eine andere HTTP-Methode (einschließlich destruktiver Methoden) mit injizierten Abfrageparametern umleitete. Alle solche Operationen laufen mit den vollen Berechtigungen des verbundenen Salesforce-Benutzers (Integration User), die in der Regel weitreichend sind. Vom Angreifer sind keine Anmeldeinformationen erforderlich, wenn der überbrückende Consumer nicht authentifiziert ist. Dieses Problem betrifft Apache Camel: von 4.0.0 vor 4.14.8, von 4.15.0 vor 4.18.3, von 4.19.0 vor 4.21.0. Benutzern wird empfohlen, auf Version 4.21.0 zu aktualisieren, die das Problem behebt. Wenn Benutzer den 4.14.x-LTS-Release-Stream verwenden, wird empfohlen, auf 4.14.8 zu aktualisieren. Wenn Benutzer den 4.18.x-Release-Stream verwenden, wird empfohlen, auf 4.18.3 zu aktualisieren. Nach dem Upgrade müssen Routen, die Salesforce-Operationsparameter über die rohen Header-Namen setzen, die CamelSalesforce*-Namen verwenden (zum Beispiel CamelSalesforceSObjectQuery und CamelSalesforceApexUrl) anstelle der alten sObject*-/apex*-Werte; die Endpoint-Options-Schreibweise bleibt unverändert. Für Bereitstellungen, die nicht sofort aktualisieren können, sollten die Salesforce-Steuer-Header von jedem nicht vertrauenswürdigen Eingang vor dem salesforce:-Producer entfernt werden (zum Beispiel removeHeaders('sObject*') und removeHeaders('apex*') am Anfang der Route), und die Abfrage-, SObject- und Apex-Parameter sollten aus einer vertrauenswürdigen Quelle gesetzt werden.
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.