CVE-2026-66908
Apache Camel: Camel-platform-http-main: keystoreを使用してJWT認証を設定したが、issuer(発行者)やaudience(対象者)が設定されていない場合、issおよびaudクレームは検証されず、信頼されたキーで署名された未期限切れのトークンがすべて受け入れられた
- 公開済み
- 2026/08/24
- 更新済み
- 2026/08/25
- CNA の割り当て
- apache
- 観察された証拠
- 2026/08/24
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N低 · 今後 30 日間
- パーセンタイル
- 34.8%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Apache Camel Platform HTTP Mainコンポーネントにおける不適切な認証(Improper Authentication)の脆弱性。この問題はApache Camelの4.8.0以降、4.22.0未満に影響します。camel-main組み込みHTTPサーバーは、authenticationEnabledとJWTキーストアのプロパティを通じて設定されるJWT認証によってエンドポイントを保護できます。jwtIssuerもjwtAudienceも設定されていない場合、JWTAuthenticationConfigurer.buildJwtOptionsはnullを返し、呼び出し側はJWTAuthOptions.setJWTOptions呼び出しを完全にスキップしたため、Vert.x JWTAuthインスタンスはキーストアのみから構築されました。その結果、受信トークンは署名と有効期限のみがチェックされ、issクレームとaudクレームはまったく検証されませんでした。これを示す兆候は何もなく、サーバーは正常に起動し、警告も報告されなかったため、ドキュメントどおりに設定されたデプロイメントは、運用者が有効にしたと認識していたよりも弱い検証を静かに強制することになりました。また、コンポーネントのドキュメント自体も、署名と有効期限のチェックをデフォルトとし、issuerとaudienceをオプションの追加機能として説明していました。この欠落は2つのconfigureAuthenticationパスのそれぞれに存在したため、アプリケーションサーバーと管理サーバーの両方が影響を受けました。したがって、設定されたキーストアが信頼する任意の鍵で署名された有効期限内のトークンは、どのissuerが発行したか、どのaudienceを対象としているかに関係なく受け入れられました。影響の及ぶ範囲はキーストアの信頼セットに依存します。署名鍵が共有またはマルチテナントのIDプロバイダーに属する場合、まったく別のaudienceのために正当に発行されたトークンが受け入れられます。一方、専用の署名者を保持するキーストアの場合、影響は同じ信頼ドメイン内の他のサービス向けに発行されたトークンの再利用に狭まります。jwtIssuerオプションとjwtAudienceオプションは4.21.0より前には存在しなかったため、それ以前のリリースではこれらのクレームを強制するサポートされた方法はまったくありませんでした。ユーザーには、この問題を修正したバージョン4.22.0へのアップグレードが推奨されます。4.22.0以降、JWTキーストアが設定されているにもかかわらずjwtIssuerもjwtAudienceも設定されていない場合、サーバーは関連するプロパティを名指しして起動を拒否します。また、署名と有効期限の検証のみを本当に希望するデプロイメントは、デフォルトでfalseとなる新しいjwtAllowMissingIssuerAndAudienceオプションで明示的にその旨を指定する必要があります。この動作が修正されるのは4.22.0のみです。4.14.9リリースと4.18.4リリースはデフォルトを変更しません。これらのメンテナンスラインの運用者が設定によってクレームを強制できるように、jwtIssuerオプションとjwtAudienceオプションを追加するだけであり、これら2つのプロパティのうち少なくとも1つを設定せずに4.14.9または4.18.4へアップグレードしたインストール環境は、引き続き信頼された鍵で署名された有効期限内のトークンをすべて受け入れます。したがって、4.14.xまたは4.18.xのユーザーは4.14.9または4.18.4へアップグレードし、その上でjwtIssuer、jwtAudience、またはその両方を設定する必要があります。4.8.0から4.21.xまでのリリースにはこれらのクレームを強制する方法がなく、強制できるバージョンに移行する必要があります。バージョンに関係なく、JWTキーストアの信頼セットを可能な限り最小に制限してください(理想的には、共有のIDプロバイダー鍵ではなく、このサービス専用の署名者)。また、サーバーの前面でゲートウェイがすでにissuerとaudienceを検証している場合は、それを迂回できないことを確認してください。注記:JIRAチケット https://issues.apache.org/jira/browse/CAMEL-24281 は、この問題を解決したさまざまなコミットを参照しており、詳細が記載されています。フェイルクローズのガードはバックポートできませんでした。jwtIssuerオプションとjwtAudienceオプション自体もCAMEL-23525によって4.21.0で導入されたばかりであるため、camel-4.18.xおよびcamel-4.14.xでは、運用者がこの要件を満たすために設定できるものが何もなく、そのガードはこれらのブランチ上のすべてのJWTデプロイメントを、利用可能な救済手段なしに壊していたでしょう。
ソース
1責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。