ラックは6月20日、国内で多数稼働しているWebアプリケーション フレームワーク 「Apache Struts 2」に脆弱性「S2-037」が発見され、この脆弱性が今後深刻なサイバー攻撃に悪用される可能性があるとして、対策を強く推奨する情報を公開した。

公式サイトが6月17日(米国時間)、Apache Struts 2のREST プラグインに脆弱性「S2-037」が含まれていることをアナウンスした。対象となるバージョンはApache Struts 2.3.20 から 2.3.28.1 まで。

ラックによると、脆弱性「S2-037」は、ネットワークを介してWebサーバにおいて任意のOSコマンドが実行できてしまう危険なものであり、それ以前に公開された脆弱性「S2-033」との関係から深刻度が高いという。

ラックは「S2-033」が公開されてから、同脆弱性の再現性など含め調査を継続していたところ、「S2-033」の回避策として有効とされた「DMIの無効化」による対応では攻撃を防げない方法を発見。同社は利用者保護を優先し、Apache Software Foundationに通知したところ、すでに「S2-037」の識別番号が設定されていたという。

ラックはその後の対応を注視していたが、この脆弱性を悪用するサンプルコードが海外の掲示板に掲載されたことにより、深刻度が高まったとしている。

脆弱性を悪用した攻撃により、電卓プログラムが実行されている画面 資料:ラック

Apache Struts2を利用して「S2-033」の対策を行っているユーザーの多くは、Apache Struts2のバージョンアップにより自社Webアプリケーションへの悪影響を懸念し、「DMIの無効化」により対策していると考えられるが、「S2-037」においては、「DMIの無効化」は回避策として機能していないという。

これにより、ラックは対策として、対策済みのバージョン「Struts 2.3.29」にアップデートすることを推奨している。また、暫定回避策として、Apache HTTP Serverのmod_rewriteで、特定文字列を含むリクエストを拒否することも紹介している。

RewriteEngine on
RewriteRule [^a-zA-Z0-9]OgnlContext[^a-zA-Z0-9] - [F]