Apache Struts 2に重大な脆弱性(CVE-2025-68493)

セキュリティニュース

投稿日時: 更新日時:

Apache Struts 2に重大な脆弱性(CVE-2025-68493)

Java向けWebアプリケーションフレームワークとして広く利用されている Apache Struts において、XML設定の処理に起因する重要な脆弱性が明らかになりました。
対象となる脆弱性は CVE-2025-68493 で、Apache Strutsの中核コンポーネントである「XWork」に存在する XML External Entity(XXE)インジェクションの問題です。

影響を受けるバージョン:EOL版を含む広範囲に影響

CVE-2025-68493は、以下のApache Strutsバージョンに影響します。

  • Struts 2.0.0 ~ 2.3.37(すでにEOL)

  • Struts 2.5.0 ~ 2.5.33(EOL)

  • Struts 6.0.0 ~ 6.1.0

特に、EOL(サポート終了)バージョンを継続利用している環境では、セキュリティパッチが提供されないため、恒常的なリスクとなります。

対策:Struts 6.1.1以上へのアップグレードが推奨

Apache Struts開発チームは、Struts 6.1.1以上へアップグレードすることを強く推奨しています。
この修正は 後方互換性が保たれているとされており、既存アプリケーションへの影響を最小限に抑えた対応が可能です。

すぐにアップグレードできない場合の暫定対策

やむを得ず即時アップグレードが難しい場合、以下の回避策が提示されています。

  • 外部エンティティを無効化したカスタムSAXParserFactoryの使用
    xwork.saxParserFactory に、外部エンティティを禁止する独自実装を指定します。

  • JVMレベルでのXML制御設定
    以下のシステムプロパティを設定し、外部DTDやSchemaへのアクセスを遮断します。

-Djavax.xml.accessExternalDTD=""
-Djavax.xml.accessExternalSchema=""
-Djavax.xml.accessExternalStylesheet=""

ただし、これらはあくまで暫定的な軽減策であり、根本的な解決にはアップグレードが不可欠とされています。

脆弱性の概要

本脆弱性は、XWorkコンポーネントにおけるXML設定ファイルの解析処理が、XMLの内容を適切に検証していないことに起因します。
この不備により、攻撃者は細工したXMLを読み込ませることで、外部エンティティを不正に参照させるXXE攻撃を成立させる可能性があります。

脆弱性を報告したのは、セキュリティ研究組織 ZAST.AI で、Apache Struts開発チームと連携し、責任ある形で情報開示が行われました。

想定される影響:情報漏えいからDoS、SSRFまで多岐に及ぶ

Apache Strutsの公式アドバイザリおよび調査報告によると、本脆弱性によって以下の影響が生じる可能性があります。

  • 情報漏えい(Disclosure of Data)
    サーバー上のローカルファイルや機密情報が外部に読み取られる恐れがあります。

  • サービス拒否(Denial of Service)
    外部エンティティの大量参照により、メモリやCPU資源が枯渇し、サービス停止に至る可能性があります。

  • SSRF(Server Side Request Forgery)
    サーバーを踏み台にして、内部ネットワーク上の本来外部からアクセスできないシステムへ不正なリクエストを送信される恐れがあります。

これらの影響は、アプリケーション単体に留まらず、内部システム全体のセキュリティに波及するリスクを伴います。