
CVE-2026-46456 の再現ツール — Apache Camel camel-aws2-sqs のインバウンドメッセージ属性ヘッダーインジェクション (sqs:SendMessage を介した Camel コントロールヘッダーインジェクション → ダウンストリームプロデューサーの操作 / RCE)
同じ Apache Camel の脆弱性を再現する実行可能な PoC リプロデューサーで、ランタイムごとに 1 つずつ用意しています:
| ランタイム | ディレクトリ | スタック | 乗っ取られるシンク | 実証される影響 |
|---|---|---|---|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 | exec:(CamelExecCommand* 経由) | リモートコード実行 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0(Camel 4.20.0 をバンドル) | http(CamelHttpUri 経由) | サーバーサイドリクエストフォージェリ |
どちらも影響を受けるバージョン(4.14.8 / 4.18.3 / 4.21.0 で修正済み)であり、同じ欠陥を実証しています:
Sqs2HeaderFilterStrategy はアウトバウンドのフィルターのみを設定するため、Sqs2Consumer はインバウンドの SQS
メッセージ属性をすべて Exchange にマッピングします。これには Camel の制御ヘッダーも含まれます。ルート作成者は
ダウンストリームのターゲットを変更する方法を一切公開していませんが、メッセージをエンキューできる攻撃者は
ヘッダーを注入してダウンストリームのプロデューサーを操作できます(CWE-20)。
Spring Boot バリアントは exec: シンクを通じてRCEを証明します。このシンクは Camel
4.20.0(Camel Quarkus 3.36.0 がバンドルするバージョン)ではデフォルトで到達できません:
CAMEL-23315 が camel-exec に allowControlHeaders オプションを追加し、デフォルトを false にして、
最初に 4.20.0 で出荷されました。この堅牢化は本 CVE とは独立しており、本 CVE を修正しません —
注入されたメッセージ属性は 4.20.0 でも依然として Exchange ヘッダーになります。したがって Quarkus バリアントは
CamelHttpUri 経由で http プロデューサーを乗っ取ります。これはデフォルトで有効になっており、SSRF を引き起こします。
各サブディレクトリは自己完結型のプロジェクト(各自の docker-compose.yml によって起動される LocalStack コンテナ付き)で、
独自の Dockerfile と README を持ちます。簡単に言うと、どちらでも:
cd camel-spring-boot # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
アドバイザリ: https://camel.apache.org/security/CVE-2026-46456.html
これらのリプロデューサーはセキュリティ研究および許可されたテストのみを目的として、公開され 修正済みの脆弱性のために提供されています。明示的な許可なくシステムに対して使用しないでください。
| プロパティ | 値 |
|---|
| コンポーネント | camel-aws2-sqs |
| 影響を受けるクラス | org.apache.camel.component.aws2.sqs.Sqs2HeaderFilterStrategy(インバウンドフィルターなし)/ Sqs2Consumer |
| CWE | CWE-20: 不適切な入力検証 |
| 影響 | メッセージ送信者が Camel 制御ヘッダーを注入 → ダウンストリームのプロデューサーを操作 |
| 影響を受けるバージョン | 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 |
| JIRA | CAMEL-23506 |