Apache Struts 2.x <= 2.5.20の複数の脆弱性

critical Nessus プラグイン ID 139607

概要

リモートホストにインストールされているApache Strutsは、複数の脆弱性の影響を受けます。

説明

リモートホストにインストールされているApache Strutsのバージョンは、2.5.20以前の2.xです。そのため、以下の複数の脆弱性の影響を受けます。

- Apache Strutsのフレームワークは、強制されると、IDなどの特定のタグ属性に割り当てられた属性の値の二重評価を実行します。そのため、タグの属性がレンダリングされるときに再び評価される値を渡すことが可能です。これを利用して、巧妙に細工されたリクエストを併用することにより、リモートコード実行(RCE)を引き起こすことが可能です。この問題が適用されるのは、Strutsタグ属性内でOGNL評価を強制する場合、つまり、攻撃者が対応するリクエストを細工することで直接変更できる検証されていない未加工の入力を、評価する式が参照する場合のみです(例:手配可能な従業員をリストする)。攻撃者が、未加工のOGNL式でskillName属性を追加の検証なしに渡せるようなリクエストでskillName属性を変更できると、skillName属性に含まれる指定されたOGNL式は、結果としてタグがレンダリングされるときに評価されてしまいます。2.0.0以降のStrutsで、意図的に二重評価を使用できるようにされました。これは、正しく使用される場合(特定の式の検証された値のみを参照する場合)には便利なツールです。ただし、式で検証されないユーザー入力を参照する場合、悪意のあるコードが挿入される可能性があります。現在対応中ですが、Strutsフレームワークに挿入された式の影響を制限するための緩和策を組み込んでいます。 2.5.22より前のStrutsは、この報告で対処している攻撃ベクトルに対して無防備な状態のままになります。この問題は次と類似しています。S2-029およびS2-036。 (CVE-2019-0230)

- ゲッターでファイルを露出するアクションに対してファイルのアップロードが実行されると、攻撃者がリクエストを操作して、アップロードされたファイルの作業コピーが読み取り専用に設定される可能性があります。その結果、ファイルに対するその後のアクションはエラーで失敗するようになります。Servletコンテナの一時ディレクトリを読み取り専用に設定し、その後のアップロードアクションが失敗するようにすることも可能です。2.5.22より前のStrutsでは、タイプjava.io.Fileやjava.nio.Fileのスタックからアクセス可能な値(Actionプロパティなど)、およびこれらの標準ライブラリパッケージのその他のクラスは、害を及ぼす可能性のある下層プロパティへのアクセスを拒否するように、 フレームワークによって適切に保護されていません。(CVE-2019-0233)

Nessusはこれらの問題をテストしておらず、代わりにアプリケーションの自己報告されたバージョン番号にのみ依存しています。

ソリューション

Apache Strutsバージョン2.5.22以降にアップグレードするか、ベンダーのSecurity Bulletinに記載されている回避策を適用してください。

参考資料

https://cwiki.apache.org/confluence/display/WW/S2-059

https://cwiki.apache.org/confluence/display/WW/S2-060

プラグインの詳細

深刻度: Critical

ID: 139607

ファイル名: struts_2_5_22.nasl

バージョン: 1.8

タイプ: local

エージェント: windows, macosx, unix

ファミリー: Misc.

公開日: 2020/8/14

更新日: 2022/12/6

設定: 徹底したチェックを有効にする

サポートされているセンサー: Frictionless Assessment Agent, Nessus Agent, Nessus

リスク情報

VPR

リスクファクター: High

スコア: 8.4

CVSS v2

リスクファクター: High

基本値: 7.5

現状値: 6.2

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS スコアのソース: CVE-2019-0230

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 9.1

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:F/RL:O/RC:C

脆弱性情報

CPE: cpe:/a:apache:struts

エクスプロイトが利用可能: true

エクスプロイトの容易さ: Exploits are available

パッチ公開日: 2019/11/19

脆弱性公開日: 2020/8/11

エクスプロイト可能

Metasploit (Apache Struts 2 Forced Multi OGNL Evaluation)

参照情報

CVE: CVE-2019-0230, CVE-2019-0233