公式セキュリティページに記載のないEOLバージョンへの影響を、5月10日リリースを通じて解説します。
TL;DR(要約)
2026年5月10日、Apache TomcatプロジェクトはTomcat 9.0.118、10.1.55、11.0.22をリリースし、5月12日に7件の新しいCVEを公式開示しました。今回のリリースでは、セキュリティ制約の適用・ダイジェスト認証・AJPシークレットの比較・LockOutRealmの大文字小文字処理・WebSocketヘッダーの漏洩・HTTP/2ヘッダーの検証・WebDAVリクエスト処理にまたがる、中程度および低程度の深刻度の問題が修正されています。
Apacheの公開アドバイザリでは9.x、10.1.x、11.xが影響対象として記載されています。しかし、Tomcat 8.5のセキュリティページは8.5.99以降更新されていません。NVD(国家脆弱性データベース)に掲載されているCVEエントリを確認すると、製品ステータス欄には8.5系も明確に影響を受けると記載されています。Tomcat 8.5は2024年3月31日にサポート終了(EOL)となっており、Apacheプロジェクトからパッチは提供されません。つまり、Tomcat 8.5を引き続き使用している組織は、7件すべてのCVEに対して無防備な状態に置かれています。
この記事では、2026年5月分の各CVEを詳しく解説し、NVDにおける8.5への影響の記録を整理したうえで、EOLバージョン向けの対処方法を説明します。
Tomcat 8.5に特有のリスク
今回のリリースで見られるパターンは、決して新しいものではありません。2026年4月のTomcatまとめ記事では、9.x・10.1.x・11.xに対して開示された10件のCVEについて、8.5系のコードベースに影響する箇所が含まれているにもかかわらず、Tomcat 8.5には上流からの対応がなかったことを報告しました。
Apache Tomcat 8.5はサポート終了から14ヶ月以上が経過していますが、コンプライアンス上の依存関係、認定済みミドルウェアスタック、Servlet 3.1 / JSP 2.3向けに構築されたアプリケーションの移行が進んでいないことから、多くの組織で現在も本番環境で稼働し続けています。EOLとなったSpring Boot 2.7を使用しているチームでも同様の問題が積み重なっており、Tomcatの脆弱性が組み込みコンテナにも波及しています。
Apacheプロジェクトの方針として、ブランチごとのセキュリティページではEOLバージョンを記載しません。これはCVEの届出でそのバージョンが影響範囲として含まれている場合でも同様です。
EU Cyber Resilience Act(Article 14の報告義務は2026年9月から施行)やDORA(Article 6のICTリスク管理義務は2025年1月より発効)の対象となっている組織にとって、サポート終了が周知されているコンポーネントに7件の未適用パッチを放置することは、組織内のリスク議論にとどまらず、コンプライアンス上の記録に残る問題となります。
結果として、tomcat.apache.org/security-8.html を確認したセキュリティエンジニアが、2026年5月のエントリを見つけられず「自分たちの8.5環境には影響しない」と判断してしまう可能性があります。NVDのエントリはまったく別のことを示しています。
7件のCVE一覧
CVE-2026-43515:セキュリティ制約が正しく適用されない
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 中 (Moderate) |
| CWE | CWE-285: 不適切な認可 |
| 8.5系への影響 | 8.5.0〜8.5.100(NVD情報) |
web.xml で同一URLの拡張子パターンに対して、異なるHTTPメソッドの制約を持つ複数の <security-constraint> を定義した場合、Tomcatは最初のメソッド制約しか適用せず、残りを無視していました。
たとえばGETとPOSTに対して別々の制約を同一の拡張子に設定していた場合、2番目のメソッドへの制限が一切適用されない状態になります。本来はアクセスをブロックしたり認証を要求すべきリクエストが、最初の制約のルールで通過してしまいます。
この問題は通常のスモークテストでは発見が困難です。最初の制約パスではアプリケーションが正常に動作しているように見えるためです。2番目のメソッドへのトラフィックが発生して初めて、問題が表面化します。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-43514:AJPシークレットが定数時間で比較されていない
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 低 (Low) |
| CWE | CWE-208: 観測可能なタイミングの差異 |
| 8.5系への影響 | 8.5.0〜8.5.100(NVD情報) |
AJPシークレットの比較処理で定数時間比較が使われていなかったため、Tomcatインスタンスと同一ネットワークセグメント上の攻撃者がタイミング攻撃によって、シークレットを1文字ずつ推測できる可能性がありました。
攻撃にはローカルネットワークへのアクセスが必要なため、深刻度は低評価となっています。ただし、現代のクラウド環境では「ローカルネットワーク」の範囲は広く、共有VLAN、コンテナネットワーク、クラウドVPCなどもこれに該当します。AJPシークレットだけがAJPコネクタへの不正アクセスを防ぐ唯一の防壁となっている環境では、実際のリスクとして対処する必要があります。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-43513:LockOutRealmがユーザー名を大文字小文字区別で扱う
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 低 (Low) |
| CWE | CWE-178: 大文字小文字区別の不適切な処理 |
| 8.5系への影響 | 8.5.0〜8.5.100(NVD情報) |
LockOutRealmはログイン失敗回数を追跡し、設定したしきい値を超えるとアカウントをロックします。しかし、ロック追跡処理ではユーザー名の大文字小文字を区別していた一方で、背後で使われているRealm(たとえば大文字小文字を区別しないJNDIやDataSource Realm)では「Admin」と「admin」を同一アカウントとして扱う場合がありました。
攻撃者は大文字小文字を変えることでロックを回避できます。たとえば「admin」で5回、「Admin」で5回、「ADMIN」で5回と試行しても、ロックがかかりません。これはブルートフォース攻撃の効率を高める問題であり、認証そのものを直接バイパスするものではありません。ただし、LockOutRealmをブルートフォース対策として使用しているすべての環境において、実際の保護効果は設定から期待されるより低かったことになります。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-43512:ダイジェスト認証で未知のユーザーがパスワード「null」で認証される
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 中 (Moderate) |
| CWE | CWE-592: 認証バイパスの問題 |
| 8.5系への影響 | 8.5.0〜8.5.100(NVD情報) |
今回のバッチで最も注目すべき脆弱性です。TomcatをDIGEST認証で設定している場合、設定済みRealmに存在しないユーザーでも、リクエストにパスワード「null」(リテラル文字列)を含めると認証が成功してしまいます。
根本原因はダイジェスト比較処理におけるnilチェックの欠如です。Realmがユーザーを見つけられなかった場合、比較処理はnullパスワードに対して実行され、パスワード部分のダイジェスト値がnullと一致するリクエストとの照合が成功してしまいます。
攻撃手順:任意の認証情報とパスワード「null」でDIGEST保護されたリソースにアクセスする。そのユーザーがRealm内に存在しなければ(攻撃者が任意のユーザー名を使う場合は通常これが当てはまる)認証が成功します。その後、攻撃者はそのリソースが「認証済みユーザー」に許可しているすべての権限を取得できます。
現代のTomcat環境ではDIGEST認証よりBASIC認証やフォームベース認証の方が一般的なため、深刻度はCriticalではなくModerateとなっています。DIGEST認証を使用している環境では、このCVEを最優先で対処してください。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-42498:WebSocketでリダイレクト時に認証ヘッダーが漏洩
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 低 (Low) |
| CWE | CWE-200: 権限のない者への機密情報の漏洩 |
| 8.5系への影響 | 8.5.24〜8.5.100(NVD情報) |
TomcatのWebSocketクライアントが認証後にリダイレクトを追う際、リダイレクト先のホストが元のホストと同じかどうかを確認せずに、最新の認証ヘッダーをリダイレクト先に転送していました。
DNSハイジャック・上流の設定ミス・悪意あるエンドポイントなどを通じてリダイレクト先を制御できる攻撃者が、本来別のホスト向けだった認証情報を取得できます。
影響範囲は限定的です。影響を受けるのはTomcatのWebSocketクライアント(サーバー側ではない)であり、Tomcat自身が外部WebSocketサービスへのアウトバウンド接続を開始し、かつリダイレクトが発生する場合のみです。サーバーサイドコンテナとしてTomcatを使っている場合はほぼ無関係です。Tomcatデプロイ内から javax.websocket / jakarta.websocket のクライアントAPIを使って外部サービスに接続するアプリケーションでは注意が必要です。
なお、8.5系への影響は8.5.0からではなく8.5.24から始まります。これは当該WebSocketクライアントのリダイレクト処理が追加されたタイミングに対応します。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-41293:HTTP/2リクエストヘッダーが検証されない
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 低 (Low) |
| CWE | CWE-20: 不適切な入力値検証 |
| 8.5系への影響 | 対象(NVD情報および8.5.xにコンポーネント存在) |
コネクタが受信したHTTP/2リクエストヘッダーが、RFC 7540のフレーミングルールへの準拠について検証されることなく、Servlet API経由でアプリケーションに渡されていました。
その結果、HttpServletRequest.getHeader() の戻り値が仕様に準拠していると合理的に信頼しているアプリケーションに、本来コネクタレベルで拒否されるべき文字を含む値が渡される可能性があります。これは、セキュリティに関わる処理(キャッシュキー・ログのフィールド・下流へのHTTPコール)でヘッダー値をサニタイズせずに使用する場合の攻撃経路となります。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
CVE-2026-41284:WebDAVのLOCKおよびPROPFINDで無制限読み込みが発生
| 項目 | 内容 |
|---|---|
| Apacheの深刻度 | 低 (Low) |
| CWE | CWE-770: 制限なしのリソース割り当て |
| 8.5系への影響 | 対象(8.5.xにコンポーネント存在) |
WebDAVサーブレットがLOCKおよびPROPFINDリクエストのリクエストボディサイズ上限を設けていませんでした。デフォルトのWebDAV設定では、これらのメソッドは認証なしのユーザーでも利用できます。そのため、攻撃者は任意のサイズのXMLボディを送信し、Tomcatにそのパースのためのメモリを強制的に確保させることができます。典型的なリソース枯渇型DoS攻撃です。
WebDAVが有効な環境のみが影響を受けます。多くのTomcatインストールではWebDAVはデフォルトで無効ですが、コンテンツ管理・ドキュメント共有・レガシー連携などで有効にしている環境では、認証なしで悪用される可能性があります。
修正バージョン: Tomcat 9.0.118 / 10.1.55 / 11.0.22
対処方法
今すぐできること
2026年5月のApacheリリースで7件のCVEが確認されました。Apacheは現在サポートされている3つのブランチ(9.0.x・10.1.x・11.0.x)向けにパッチを提供しましたが、サポート終了から1年以上が経過しているTomcat 8.5向けのパッチはリリースされていません。Apacheプロジェクトの8.x系セキュリティページにはこれらのCVEのエントリはありませんが、同プロジェクト自身がNVDに提出したファイリングでは大多数のCVEで8.5系が影響範囲に含まれており、残りについてもコンポーネント分析により影響が確認されています。
認定済みミドルウェアへの依存・古いServlet/JSP APIレベルにロックされたアプリケーションコード・組織の制約などにより、Tomcat 8.5を本番環境で継続使用している企業は多くあります。そうした環境に対して、NES(Never-Ending Support)for Apache Tomcat はTomcat 8.5のドロップイン置き換えとして、今回の7件すべて(およびApacheが8.x系のパッチ提供を終了した過去のCVEバッチも含む)に対する修正を提供します。
Tomcat 8.5を本番環境で使用しているなら、2026年5月のリリースは重要な教訓を示しています。「Apacheのセキュリティページにエントリがない」は「影響を受けない」ではありません。プロジェクトがあなたのバージョンの追跡をやめた、ということです。 CVEは今後も出続けます。緊急移行なしに保護を維持するための手段が、NESです。
著者:Greg Allen(最高技術責任者)
原文:Apache Tomcat May 2026 Security Release: 7 CVEs Affect Tomcat 8.5 | HeroDevs Blog