CVE-2026-40047
Apache Camel: Camel-Docling: カスタムCLI引数の検証不足により、DoclingProducerで引数インジェクションとパストラバーサルが可能になる
- 公開済み
- 2026/07/06
- 更新済み
- 2026/07/06
- CNA の割り当て
- apache
- 観察された証拠
- 2026/08/06
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N低 · 今後 30 日間
- パーセンタイル
- 83.4%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Apache Camel Docling コンポーネントにおける、コマンドの引数デリミタの不適切な無害化('Argument Injection')の脆弱性。camel-docling コンポーネントは、DoclingProducer で引数リストを組み立て、java.lang.ProcessBuilder を通じて実行することで、外部の `docling` コマンドラインツールを呼び出します。`CamelDoclingCustomArguments` エクスチェンジヘッダー(List<String>)を介して提供されるカスタム CLI 引数は、検証が不十分なままその引数リストに追加されていました。元の実装は、禁止フラグの拒否リストに依存し、リテラルな `../` シーケンスを含むパス値のみを拒否していました。その結果、外部の影響を受けるデータを `CamelDoclingCustomArguments` ヘッダー(または呼び出しの構築に使用されるパスを含むヘッダー)に転送する Camel ルートは、プロデューサーが認識されない、または意図しない `docling` CLI フラグをサブプロセスに渡し、リテラルな `../` チェックで捕捉されないトラバーサルシーケンスを通じて、意図したディレクトリの外側に解決されるパス形式の引数値を提供する可能性がありました。Camel 自体がこれらの値から `docling` 呼び出しを構築するため、コンポーネントがそれらを制限する責任を負い、弱い検証により、外部ツールに渡される引数への CLI 引数インジェクションとディレクトリトラバーサルが可能になりました。この呼び出しは ProcessBuilder のリストベースの形式を使用するため、シェルが引数値を解釈することはなく、シェルメタキャラクタによる OS コマンドインジェクションは不可能であり、修正によって追加されたメタキャラクタ拒否は多層防御です。この問題は Apache Camel に影響します:4.15.0 から 4.18.3 未満。CAMEL-23212 修正を含むリリースにアップグレードすることをお勧めします。メインラインでは、この修正は Apache Camel 4.19.0(および 4.20.0 などの以降のリリース)から含まれています。4.18.x LTS リリースストリームのユーザーは、4.18.3 にアップグレードしてください。この修正は、拒否リストを認識された `docling` CLI フラグの厳格な許可リストに置き換え(認識されないフラグを拒否し、出力ディレクトリフラグなどのプロデューサー管理フラグを拒否)、引数値のシェルメタキャラクタを防御的に拒否し、検証前に Path.normalize() でパス形式の値を正規化して、リテラルな `../` チェックをバイパスするトラバーサルシーケンスを検出します。多層防御として、ルート作成者は信頼できないメッセージコンテンツを `CamelDoclingCustomArguments` ヘッダーやパスを含むヘッダーにマッピングしないようにし、信頼できないプロデューサーから到着するメッセージから Camel 内部ヘッダーを削除する必要があります。
ソース
2Apache Camel Docling の引数検証リスクに関する専門的な脆弱性評価レポート。技術的影響、是正措置、緩和戦略を含む。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。