Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-83531 — Lauffähiger Spring-Boot-Proof-of-Concept für CVE-2026-83531, der Expression-Language-Injection im dynamic-router-control-Endpunkt von Apache Camel demonstriert und den Fix verifiziert. | Kitploit
Tools/GitHubGitHub/oscerd/cve-2026-83531
DefensivwerkzeugeSchwachstellenanalyseCode-AnalyseExploitationWebanwendungs-ExploitationLernen & Bildung
GitHuboscerd/cve-2026-83531

CVE-2026-83531

Lauffähiger Spring-Boot-Proof-of-Concept für CVE-2026-83531, der Expression-Language-Injection im dynamic-router-control-Endpunkt von Apache Camel demonstriert und den Fix verifiziert.

Repository anzeigen
3vor 1 TagNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-83531 — camel-dynamic-router: Injection von Ausdrücken in der Ausdruckssprache des Control-Endpunkts

Lauffähiger Proof-of-Concept-Reproduzierer für die Apache-Camel-Schwachstelle, bei der der dynamic-router-control-Endpunkt das Subscription-Prädikat und den Namen der Sprache, mit der es kompiliert wird, aus der eingehenden Nachricht übernahm (die Felder predicate / expressionLanguage einer DynamicRouterControlMessage oder die Header CamelDynamicRouterPredicate / CamelDynamicRouterExpressionLanguage). Der Dienst löste diese Sprache dann aus dem CamelContext auf und kompilierte den Ausdruck zu einem Predicate, ohne Allow-List und ohne Opt-in. Das kompilierte Prädikat wurde gegen jeden über den Kanal geleiteten Exchange ausgewertet — jeder Akteur, der eine Nachricht auf einen Transport senden konnte, dessen Route sie an einen Control-Endpunkt weiterleitet, konnte somit einen Ausdruck seiner Wahl einspeisen, der mit den Rechten des Camel-Prozesses ausgewertet wurde. Jede im Classpath vorhandene Sprache konnte ausgewählt werden, einschließlich simple, die immer vorhanden ist und die Standardeinstellung war.

Nur Camel Spring Boot. Es gibt keine camel-quarkus-dynamic-router-Erweiterung, daher kann dieser Reproduzierer nicht auf Camel Quarkus ausgeführt werden.

LaufzeitumgebungVerzeichnisStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-dynamic-router 4.22.0 (betroffen; behoben in 4.22.1)

Was es demonstriert

Die Anwendung richtet einen Dynamic-Router-Kanal test ein (direct:start → dynamic-router://test). Der Angreifer sendet eine Subscribe-Control-Nachricht mit einem vom Angreifer gewählten Prädikatsausdruck und einer gewählten Sprache:

CamelDynamicRouterPredicate          = ${bean:detonator?method=detonate}
CamelDynamicRouterExpressionLanguage = simple

Dann wird eine Nachricht durch den Kanal geleitet, der das Subscription-Prädikat auswertet. Im betroffenen Build wird der Ausdruck ausgeführt und ruft detonator.detonate() auf — ein harmloser Platzhalter für jede Registry-Methode ohne Argumente, die ein Angreifer erreichen könnte (und jede Sprache, z. B. Groovy, ermöglicht beliebigen Code). Im korrigierten Build weigert sich der Control-Endpunkt, das Prädikat/die Sprache aus der Nachricht zu übernehmen.

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

Erwartete Ausgabe beim betroffenen Build:

Subscription accepted.
>>> PROVEN: the attacker-supplied predicate expression was compiled and evaluated, invoking
>>> detonator.detonate() with the privileges of the Camel process ...

Beim korrigierten Build wird das Subscribe mit IllegalArgumentException: The subscription predicate expression, and the language used to compile it, cannot be taken from a control message. ... set 'allowPredicateFromMessage=true' ... abgelehnt.

Schwachstellenzusammenfassung

EigenschaftWert
Komponentecamel-dynamic-router (dynamic-router-control-Endpoint)
CWECWE-94 (Code Injection), CWE-917 (Expression Language Injection)
SchweregradHOCH
AngriffsvektorEine Steuernachricht (subscribe/update), die einen Prädikatsausdruck und eine Sprache liefert, über einen Transport, dessen Route sie an einen dynamic-router-control-Endpoint weiterleitet
AuswirkungAuswertung eines vom Angreifer gewählten Ausdrucks (jede Classpath-Sprache) mit den Rechten des Camel-Prozesses — Codeausführung
Betroffene VersionenAb 4.4.0 vor 4.18.5, ab 4.19.0 vor 4.22.1
Korrigierte Versionen4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24576
DanksagungLeon Zlobecki

Advisory: https://camel.apache.org/security/CVE-2026-83531.html

Die Korrektur

Der Prädikatsausdruck und seine Sprache werden standardmäßig nicht mehr aus der Steuernachricht übernommen: Eine Steuernachricht, die sie liefert, wird abgelehnt, sofern der Routenautor nicht ausdrücklich mit allowPredicateFromMessage=true am dynamic-router-control-Endpoint zustimmt. Der vorgesehene Weg besteht darin, predicate und expressionLanguage auf der Endpoint-URI zu konfigurieren (vom Routenautor kontrolliert), wie es Releases vor 4.4.0 taten.

Gegenmaßnahmen, wenn Sie nicht aktualisieren können

Leiten Sie keine von außen stammenden Nachrichten an einen dynamic-router-control-Endpoint weiter; verwalten Sie Abonnements nur über vom Routenautor kontrollierte Endpoints und beschränken Sie die Transporte, die den Steuerkanal erreichen können.

Haftungsausschluss

Dieses Repository wird zu Bildungs- und Verteidigungszwecken veröffentlicht: um Apache-Camel-Nutzern zu helfen, die Schwachstelle zu verstehen, zu prüfen, ob sie betroffen sind, und zu bestätigen, dass ein Upgrade sie behebt. Die Payload ist eine harmlose Marker-Bean. Verwenden Sie dieses Material nicht gegen Systeme, die Ihnen nicht gehören oder die Sie nicht betreiben.

Tool herunterladen