🔥 この記事の詳細
2026-05-19 更新
B
今週中

Apache Struts2の脆弱性CVE-2017-5638(S2-045)に関する詳細なコード監査と解析記事です

脆弱性🌐 英語ソース
🔢 CVECVE-2017-5638
📅 2026-05-19📰 freebuf
📌 一言でいうと
Apache Struts2の脆弱性CVE-2017-5638(S2-045)に関する詳細なコード監査と解析記事です。Content-Typeヘッダーを介したOGNL注入により、リモートコード実行(RCE)が可能になる仕組みを解説しています。特に、三重のサンドボックス制限を回避して任意のコマンドを実行させるペイロードの構造と、その内部的な動作フローに焦点を当てています。
🔍該当判定
  • JavaベースのWebフレームワーク「Apache Struts2」を自社システムで利用している
  • Apache Struts2のバージョンが 2.3.33 または 2.5.10 より古い
  • 外部からアクセス可能なWebサーバーで Struts2 を動作させている
上記いずれにも該当しない → 静観でOK
該当時の対応
Struts2を最新バージョンにアップデートし、脆弱性が修正されたバージョンを使用すること。また、WAF等で不正なContent-Typeヘッダーを遮断する対策を検討してください。
📧 メール案を見る (管理者向け)
⚠️ これは AI が生成した参考例です。配信前に必ず内容をご確認のうえ、貴社の状況に合わせて編集してご利用ください。実際の被害状況や自社の利用環境を踏まえた判断は、貴社のセキュリティ責任者にご確認ください。
件名: 【共有】Apache Struts2 CVE-2017-5638 (S2-045) の解析情報について

お疲れさまです。Apache Struts2の脆弱性 S2-045 に関する技術解析情報の共有です。

■ 概要
Jakarta Multipart parserにおける不適切なエラーハンドリングにより、Content-Typeヘッダーに注入されたOGNL式が評価され、リモートコード実行 (RCE) が可能になる脆弱性です。CVSSスコアは10.0 (Critical) と非常に高く、サンドボックス回避を含む高度なペイロードが存在します。

■ 影響範囲
- Apache Struts 2.3.5 〜 2.3.33
- Apache Struts 2.5 〜 2.5.10

■ 対応手順
1. 利用中のStruts2のバージョンを確認してください。
2. 脆弱性が修正された最新バージョンへアップデートを適用してください。
3. アップデートが困難な場合は、WAFにてContent-Typeヘッダーに特殊文字(#や%など)が含まれるリクエストを遮断する暫定対応を検討してください。

■ 参考情報
- Apache Struts S2-045 Advisory

対応優先度: 高
対応期限: 速やかに確認および対応を推奨
Subject: [Technical Info] Analysis of Apache Struts2 CVE-2017-5638 (S2-045)

Dear Team,

This is a technical update regarding the Apache Struts2 vulnerability S2-045.

■ Overview
Due to improper error handling in the Jakarta Multipart parser, OGNL expressions injected via the Content-Type header can be evaluated, leading to Remote Code Execution (RCE). This vulnerability is critical (CVSS 10.0), and payloads exist that can bypass multiple sandbox restrictions.

■ Affected Versions
- Apache Struts 2.3.5 to 2.3.33
- Apache Struts 2.5 to 2.5.10

■ Mitigation Steps
1. Verify the version of Struts2 currently in use.
2. Update to the latest patched version of the framework.
3. If immediate patching is not possible, consider implementing WAF rules to block requests containing suspicious characters (e.g., #, %) in the Content-Type header.

■ Reference
- Apache Struts S2-045 Advisory

Priority: High
Deadline: Immediate action recommended