Apache Tomcat RCE Vulnerability Exposed with PoC Released
2025/05/26 gbhackers — 広く使用されているオープンソースの Java Servlet Container/Web Server である Apache Tomcat に、深刻な脆弱性 CVE-2025-24813 が発見された。この脆弱性は、内部にドットを含むファイルパス (例:file.Name) の不適切な処理に起因する。この脆弱性を悪用する攻撃者は、セキュリティ制御を回避し、リモート・コード実行 (RCE)/情報漏洩/悪意のコンテンツの挿入を引き起こす機会を得るという。

この脆弱性は、Tomcat のバージョン 11.0.0-M1〜11.0.2/10.1.0-M1〜10.1.34/9.0.0.M1〜9.0.98 に影響を及ぼす。すでに Apache は、バージョン 11.0.3/10.1.35/9.0.99 をリリースし、この問題に対処している。
技術的な詳細とエクスプロイト・チェーン
Cyber Advising の投稿によると、脆弱性 CVE-2025-24813 は、Tomcat のデフォルト・サーブレットにおけるパス等価性の問題に起因する。また、特定のコンフィグレーションにおいては、HTTP PUT リクエストによるファイル・アップロードの、不適切な処理という問題がある。
この脆弱性は、以下の場合に悪用が可能となる。
- デフォルト・サーブレットの readonly パラメータが、false に設定されている (書き込みが有効)。
- 部分的な PUT リクエスト (Content-Range ヘッダーを使用) が許可されている (デフォルトで有効化)。
- Tomcat がファイル・ベースのセッション持続性を使用するように設定されている (デフォルトでは無効化)。
- アプリケーションにデシリアライゼーションの脆弱性のあるライブラリが取り込まれている。
- 攻撃者が、機密ファイルの命名規則と場所を把握している。
エクスプロイトの手順
- 悪意のあるセッション・ファイルのアップロード:
攻撃者は、セッション・ストレージ・ディレクトリをターゲットとして、細工された Java シリアライズ・ペイロードを含む、PUT リクエストを送信する。例:textPUT /webapps/ROOT/WEB-INF/sessions/SESSIONID.ser HTTP/1.1 Host: vulnerable-tomcat Content-Range: bytes 0-99/100 Content-Type: application/octet-stream <malicious serialized payload> - デシリアライゼーションとリモートコード実行のトリガー:
攻撃者は、アップロードされたセッション・ファイルを参照する、JSESSIONID Cookie を取り込んだ GET リクエストを送信する。例:textGET / HTTP/1.1 Host: vulnerable-tomcat Cookie: JSESSIONID=SESSIONID:Tomcat が悪意のセッション・ファイルをデシリアライズすると、Tomcat プロセスの権限下で任意のコードが実行される。
リスク要因と影響
この脆弱性の深刻度は CVSS:9.8 と評価されているが、悪用の前提として、デフォルト以外のコンフィグレーションが、具体的には書き込み可能なデフォルト・サーブレットとファイル・ベースのセッション・パーシステンスが必要である。
その一方で、すでに PoC エクスプロイト・コードが公開されており、公開後 30 時間以内での攻撃が確認されている。
潜在的な影響は次のとおりである:
- リモート・コード実行 (RCE)
- 機密ファイルへの不正アクセス
- アップロードされるファイルへの悪意のコンテンツ挿入
- サーバ・コンフィグレーション・ファイルの破損
- ネットワーク内でのデータ侵害とラテラル・ムーブメント
リスク要因表
| Condition | Default Value | Exploitation Required | Risk Contribution |
|---|---|---|---|
Default servlet readonly=false | false | true | High |
| Partial PUT requests enabled | true | true | High |
| File-based session persistence | false | true | High |
| Vulnerable deserialization library present | N/A | true | High |
| Attacker knows file names/structure | N/A | true | Medium |
緩和策と推奨事項
直ちに実施すべき緩和策:
- Apache Tomcat のバージョンを、11.0.3/10.1.35/9.0.99 へとアップグレード。
- デフォルト・サーブレットの readonly パラメータを true に設定。PUT による、書き込みアクセスを防止。
- 不要な場合には、partial PUT リクエストを無効化。
- ファイルベース・セッション永続化を避ける。もしくは、書き込み可能なディレクトリの、セッション・ストレージからの分離。
- 不要なデシリアライゼーション・ライブラリを classpath から削除。
迅速なアップグレードが不可能な組織は、すべてのコンフィグ強化手順を適用し、異常な PUT およびセッション・アクティビティを監視する必要がある。
Apache Tomcat に存在する CVE-2025-24813 は、簡単に悪用され、甚大な被害にいたる脆弱性である。Tomcat の悪用を防ぐためには、速やかなパッチ適用が不可欠である。
悪用の前提条件として、特定のコンフィグが必要とされる一方で、すでに PoC エクスプロイト・コードが公開されている。さらに、アクティブな悪意のスキャンが実行されている。したがって、すべての Tomcat デプロイメントにおいて、迅速なパッチ適用とコンフィグのレビューが不可欠となっている。
この脆弱性 CVE-2025-24813 は、2025年3月の時点で悪用が確認され、PoC も公開されており、4月には CISA KEV に登録されています。ご利用のチームは、いま一度ご確認ください。詳細は以下の記事で詳しく取り上げていますので、よろしければ、Apache で検索と併せて、ご参照ください。
2025/04/03:CVE-2025-24813 への攻撃:高度な戦術を解明
2025/04/02:CVE-2025-24813 が CISA KEV に登録
2025/03/31:CVE-2025-24813:積極的な悪用と PoC 提供
2025/03/21:CVE-2025-24813:検出された悪用と問題点
2025/03/17:CVE-2025-24813:戦術変更への備え
2025/03/10:Apache Tomcat の CVE-2025-24813 が FIX

You must be logged in to post a comment.