CVE-2026-90885
Apache Camel: Camel-Saxon の XML 外部エンティティ処理 - XQueryBuilder が、すでに javax.xml.transform.Source であるメッセージ本文を Saxon のデフォルトパーサー設定で解析したため、その本文内で宣言された外部エンティティが解決された
- 公開済み
- 2026/10/26
- 更新済み
- 2026/10/26
- CNA の割り当て
- apache
- 観察された証拠
- 2026/10/30
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N低 · 今後 30 日間
- パーセンタイル
- 48.6%
- モデルの日付
- 2026/11/02
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Apache Camel SaxonコンポーネントにおけるXML外部エンティティ参照の不適切な制限に関する脆弱性。この問題はApache Camelに影響します: 4.0.0から4.18.5より前、4.19.0から4.22.2より前。camel-saxonのXQueryBuilderは、xquery言語およびxqueryコンポーネントの式を評価するもので、デフォルトのSaxon Configurationを、空白除去ルールのみを設定するパースオプションで構築していたため、XMLパーサーはデフォルトのままとなり、そのデフォルトではDOCTYPE宣言が受け入れられ、外部エンティティが解決されていました。String型またはbyte[]型のメッセージボディ、あるいはInputStreamとして読み取られる任意のボディは、まずCamel自身のXML型コンバーターによってjavax.xml.transform.Sourceに変換されます。このコンバーターは外部エンティティに対してパーサーを設定するため、これらのボディは影響を受けませんでした。しかし、すでにSourceであったボディはSaxonにそのまま渡され、そのSourceを依然としてパースする必要がある場合(ストリームベースのSourceがそうであるように)、SaxonはそのConfigurationでパースしたため、他のボディ型に適用される保護を回避していました。このようなボディは、例えばルートがconvertBodyTo(Source.class)でメッセージを変換した後や、ルート内の先行するコンポーネントやプロセッサがボディをストリームベースのSourceに設定した場合に生じます。したがって、そのボディ内で宣言された外部サブセットを持つDOCTYPEや外部エンティティは解決され、式の評価対象となるドキュメントに展開されていました。XMLがそのような形式でXQuery式またはxqueryエンドポイントに到達する外部の送信者は、Camelプロセスが読み取り可能なファイルを読み取り、そのプロセスにドキュメントが指定するホストへのリクエストを発行させることができました。ルートが独自のConfigurationを指定しない場合は常にデフォルトのConfigurationが使用されるため、非デフォルトのオプションは必要ありません。ユーザーはこの問題を修正したバージョン4.23.0へのアップグレードを推奨されます。4.22.xリリースストリームを使用している場合は、4.22.2へのアップグレードを推奨します。4.18.xリリースストリームを使用している場合は、4.18.5へのアップグレードを推奨します。4.14.xリリースストリーム以前、および4.15.xから4.17.x、4.19.xから4.21.xのリリースラインは、この問題が解決される前にサポート終了となっており、修正は提供されないため、これらのデプロイメントはサポート対象のリリースへ移行する必要があります。直ちにアップグレードできないデプロイメントでは、信頼できない送信者からのXMLを含むボディがすでにjavax.xml.transform.Sourceである場合にそのボディに対してXQueryを評価しないようにするか、xqueryエンドポイントまたは言語のconfigurationオプションを、DOCTYPE宣言を拒否し、外部エンティティおよび外部DTDの読み込みを無効にするパースオプションを持つSaxon Configurationに設定してください。これは修正されたリリースが現在デフォルトで適用している内容です。
ソース
CVE-2026-90885 の実行可能な概念実証(PoC)再現ツール。Apache Camel camel-saxon XQuery における XXE(CWE-611)を対象とし、Spring Boot および Quarkus ビルドと修正検証を含む。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。