【活用ガイド】

JVNDB-2026-022690

Apache Software FoundationのApache Camelにおける信頼できないデータのデシリアライゼーションに関する脆弱性

概要

Apache Camelにおける信頼されていないデータの逆シリアライズ(Deserialization)脆弱性について説明します。camel-vertx-httpコンポーネントは、Content-Typeがapplication/x-java-serialized-objectのHTTPレスポンスボディを、ObjectInputFilterを適用せずにjava.io.ObjectInputStreamでそのまま逆シリアライズしています(VertxHttpHelper.deserializeJavaObjectFromStream)。この逆シリアライズ処理は、producerエンドポイントでtransferException=true(またはコンポーネントレベルでallowJavaSerializedObject=true)が設定され、かつthrowExceptionOnFailureがデフォルトのtrueのままである場合にのみ実行されます。この場合、バックエンドのHTTPレスポンスが5xxステータスかつapplication/x-java-serialized-objectのコンテンツタイプであれば、そのボディはクラス制限なしに逆シリアライズされます。攻撃者がCamelのproducerが通信するバックエンドを、中間者攻撃(暗号化されていないHTTP接続上)やバックエンドサービスの侵害を通じて制御できる場合、巧妙に作成されたシリアライズ済みJavaオブジェクトを返すことで、適切なガジェットチェーンがクラスパスに存在すれば、Camelアプリケーションホスト上でリモートコード実行を達成する可能性があります。この経路は、transferExceptionがfalseに設定されているデフォルト設定の場合には到達できません。本脆弱性はApache Camelのバージョン4.0.0以降4.14.8未満、4.15.0以降4.18.3未満、4.19.0以降4.20.0未満に影響します。ユーザーは本問題を修正したバージョン4.20.0へのアップグレードを推奨します。4.14.xのLTS系を使用している場合は4.14.8、4.18.x系を使用している場合は4.18.3へのアップグレードも推奨されます。アップグレード後は、両ヘルパーユーティリティが実施する逆シリアライズ処理は、デフォルトのObjectInputFilter(allow-list java.**;javax.**;org.apache.camel.**;!*)によって制約されます。このフィルタは、新たに追加されたdeserializationFilterエンドポイントオプションやJVM全体の-Djdk.serialFilterシステムプロパティを通じてカスタマイズ可能です。すぐにアップグレードできない環境では、信頼できないまたはネットワークから到達可能なバックエンドと通信するproducerでtransferException=true(またはallowJavaSerializedObject=true)を有効にしないこと、中間者攻撃によるレスポンスのすり替えを防ぐためにproducer接続をTLS(https)にすること、必要に応じて明示的に-Djdk.serialFilterで許可リスト(例:java.**;org.apache.camel.**;!*)を設定して逆シリアライズを制限することが推奨されます。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 8.1 (重要) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 高
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): 高
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
影響を受けるシステム


Apache Software Foundation
  • Apache Camel 4.0.0 以上 4.14.8 未満
  • Apache Camel 4.15.0 以上 4.18.3 未満
  • Apache Camel 4.19.0

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。
・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

Apache Software Foundation Openwall
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 信頼できないデータのデシリアライゼーション(CWE-502) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-40859
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-40859
更新履歴

  • [2026年07月09日]
      掲載