Apache Tomcat脆弱性 CVE-2025-24813 対応まとめ

脆弱性の概要

「CVE-2025-24813」は、Apache Tomcatにおける脆弱性で、リモートコード実行(RCE)や情報漏洩のリスクを引き起こす可能性がある。以下の条件が満たされる場合に発生する。

  • デフォルトサーブレットの書き込みが有効(デフォルトでは無効)
  • 部分的PUT(Partial PUT)のサポートが有効(デフォルトで有効)
  • セキュリティ上重要なファイルが部分的PUTによってアップロードされる。
  • アプリケーションがTomcatのファイルベースセッションを使用し、デフォルトのストレージロケーションを利用
  • デシリアライズ攻撃に利用される可能性のあるライブラリを含む

影響を受けるバージョン

  • Apache Tomcat 11.0.0-M1 ~ 11.0.2
  • Apache Tomcat 10.1.0-M1 ~ 10.1.34
  • Apache Tomcat 9.0.0-M1 ~ 9.0.98

修正バージョン

  • Apache Tomcat 11.0.3以降
  • Apache Tomcat 10.1.35以降
  • Apache Tomcat 9.0.99以降

対策

アップデートする。

1. yumを使用する場合 (RedHat系ディストリビューション)

CentOSやRed Hat系のLinuxディストリビューションでは、以下のコマンドを使用してApache Tomcatをアップデートする:

sudo yum update tomcat

補足:

  • tomcatのパッケージ名が異なる場合があるため、事前に以下のコマンドでインストール済みのTomcatパッケージ名を確認ししておくと良い:
rpm -qa | grep tomcat

2. apt-getを使用する場合 (Debian系ディストリビューション)

UbuntuやDebian系のLinuxディストリビューションでは、以下のコマンドを使用して、Apache Tomcatをアップデートする:

sudo apt-get update
sudo apt-get upgrade tomcat9

補足:

  • tomcatのパッケージ名が異なる場合があるため、事前に以下のコマンドでインストール済みのTomcatパッケージ名を確認ししておくと良い:
dpkg -l | grep tomcat

ワークアラウンド

アップデートが難しい場合は、以下の回避策を検討:

  • PUTメソッドの無効化。
  • セッション永続化の無効化。

1. PUTメソッドの無効化

PUTメソッドを無効化するには、web.xmlファイルを編集して適切な制限を設定する。

手順:

  1. Tomcatのconf/web.xmlファイルを開く。
  2. 以下のような設定を追加または編集する:
<security-constraint>
    <web-resource-collection>
        <web-resource-name>Disable PUT</web-resource-name>
        <url-pattern>/*</url-pattern>
        <http-method>PUT</http-method>
    </web-resource-collection>
    <auth-constraint />
</security-constraint>

2. セッション永続化の無効化

セッション永続化を無効にすることで、Tomcatが再起動時にセッション情報を保存しなくなる。

手順:

  1. Tomcatのconf/context.xmlファイルを開く。
  2. <Manager>タグ内にsaveOnRestart="false"属性を追加または編集する:
<Context>
    <Manager saveOnRestart="false"/>
</Context>

3. セッション永続化の無効化

設定変更後は、必ずTomcatを再起動して設定を反映させること。

参考情報