ブログ

Spring4Shell および関連する脆弱性 (CVE-2022-22965、CVE-2022-22950、CVE-2022-22963) の理解と対処

ニューヨーク・ヤンキースの不滅の捕手であり、メジャーリーグの野球殿堂入り選手であり、誤用表現の達人でもあるヨギ・ベラの言葉を引用すると、「またしてもデジャブだ」。

Log4j の脆弱性と Log4Shell 攻撃によって引き起こされた苦痛と混乱の後、アプリケーション開発に再び取り組むのは安全だと皆が思っていた矢先、セキュリティを大幅に損ない貴重なリソースを食いつぶす、また別の恐ろしい脆弱性が現れました。

すでにご存知かと思いますが、2022年3月29日、中国を拠点とする研究者が、Spring Core Javaライブラリのリモートコード実行(RCE)の脆弱性のスクリーンショットを投稿しました。 この脆弱性にはその後CVE-2022-22965が割り当てられ、CVSS の深刻度スコアは「重大」と評価されました。 VMwareが報告したこの脆弱性は GitHub に公開されていたが、すぐに削除された。 残念ながら、被害はすでに発生しており、脆弱性はすぐに他のリポジトリに投稿されました。

メディアの注目を集める多くの深刻な脆弱性と同様に、CVE-2022-22965 にも一般的な名前が付けられています。 Spring4Shell、または場合によっては SpringShell。 いずれにせよ、Spring ライブラリは Java プログラマーの時間節約のために大多数のアプリケーションで使用されているため、この程度の深刻度の脆弱性はどのような名前で呼ばれても間違いなく危険です。

2022年3月31日にRCEの早期発表としてSpringが投稿したブログによると、この脆弱性はJava Development Kit (JDK) 9以降で実行されているSpring MVCおよびSpring WebFluxアプリケーションに影響を及ぼします。 また、アプリケーションを Apache Tomcat 上で WAR として実行する必要がある場合もあります。 この脆弱性は、Spring Framework バージョン 5.3.0 ~ 5.3.17、5.2.0 ~ 5.2.19、およびそれ以前のバージョンに影響します。 さらに心配なのは、Spring が「脆弱性の性質はより一般的なものであり、まだ報告されていない他の悪用方法がある可能性がある」と警告していることです。

また、Spring によれば、デフォルトの Java アーカイブ (JAR) デプロイメントとして実行されるアプリケーションは CVE-2022-22965 に対して脆弱ではありませんが、ベンダーは他の悪用手法によって影響を受ける可能性があることを認めています。

Spring4Shell の脆弱性も、別の脆弱性に続いて発生しました。 Spring Cloud Function ソフトウェアのバージョン 3.1.6 および 3.2.2、およびサポートされていない古いバージョンでは、Spring Expression Language (SpEL) で特別に細工されたルーティング式を作成してローカル リソースにアクセスし、RCE 攻撃を可能にする可能性があります。 CVE-2022-22963 は、当初 CVSS の深刻度スコアで「中」に分類されていましたが、その後「重大」な脆弱性として再分類されました。 修正は、Spring Cloud Function バージョン 3.1.7 または 3.2.3 にアップグレードすることで利用できます。  

CVE-2022-22965 および CVE-2022-22963 とは別に、Spring の別の脆弱性である CVE-2022-22950 が 2022 年 3 月 28 日に報告されました。 これは、Spring Framework バージョン 5.3.0 ~ 5.3.16 およびそれ以前のサポートされていないバージョンに存在するサービス拒否 (DoS) の脆弱性です。 Spring は Spring Framework 5.3.17+ の修正をリリースしました。

現在までに、Spring4Shell スキャナーはすでに作成および展開されており、脆弱性が積極的に悪用されているという報告があります。

Spring は、Spring Framework 5.3.18 および 5.2.20、および Spring Framework 5.3.18 に依存する Spring Boot 2.5.12 など、CVE-2022-22965 の脆弱性を修正したバージョンをリリースしました。 (Spring によると、Spring Framework 5.3.18 にも依存する Spring Boot 2.6.6 も間もなくリリースされる予定です。)

Spring はこれらの厄介な脆弱性に対処するための修正プログラムをリリースすることに成功しましたが、組織には再び、できるだけ早く修正プログラムを更新して適用する責任があります。 Log4j / Log4Shell の問題と同様に、課題はライブラリの普遍性と、組織が認識していないアプリケーションで使用される可能性があるという事実です。 アプリケーションが影響を受けるライブラリ セットを使用していることを認識していない場合、組織はどのようにして組織自身とそのユーザーをエクスプロイトの影響から保護できるでしょうか?

ここで F5 が役立ちます。

Spring フレームワークの脆弱性と Log4j の脆弱性および Log4Shell エクスプロイトの特性には類似点と相違点がありますが、Web アプリケーション ファイアウォール (WAF) や同様のセキュリティ ソリューションを導入することで、どちらも検出してブロックできます。

F5 のお客様は、Spring4Shell および関連する脆弱性に基づく攻撃から防御するための最も強力な保護対策をすでに導入しています。 ただし、F5 は、影響を受ける Spring ライブラリを直ちにアップグレードし、必要がなくなった場合は脆弱な Spring ライブラリをアプリケーションから削除することをお客様と開発チームに強く推奨します。

F5 が包括的かつ動的なセキュリティ製品とサービスのポートフォリオを通じてお客様をサポートし、アプリケーション、組織、ユーザーを保護する方法をご紹介します。

F5 セキュリティ インシデント対応チーム (SIRT)

攻撃を受けている場合、または組織やそのアプリケーションが脆弱で無防備状態にあると心配な場合は、F5 サポート チームに連絡して、 F5 SIRTへのエスカレーションをリクエストしてください。 このチームは 24 時間 365 日対応しており、F5 システムとソフトウェアのパッチ適用をガイドし、構成を支援し、 F5 iRulesの導入を支援して、リスクを制限したり攻撃を軽減したりします。


BIG-IP アドバンスト WAF

F5 は、Spring4Shell の脆弱性によって公開される既知の攻撃ベクトルをブロックするために、BIG-IP Advanced WAFおよび BIG-IP ASM の導入で利用可能なシグネチャ セットをリリースしており、今後も対応とリリースを継続します。 バイパスの試みに対する保護のために、署名も継続的に更新されています。 最新の Attack Signature Update (ASU) パッケージを所有しており、それを使用していることを確認してください。 

Advanced WAF または ASM を導入していないお客様の場合、特定の CVE をターゲットにしている可能性のある問題のあるトラフィックを検出し、ログに記録し、ドロップするために、アプリケーションに対して iRule を適用できます。

NGINX アプリ保護 WAF

F5 は、顧客が使用および導入する F5 プラットフォームに関係なく、一貫したアプリケーション セキュリティを保証します。 したがって、 NGINX App Protect WAFの顧客は、BIG-IP Advanced WAF の顧客と同時に同じ更新されたシグネチャを受け取ります。 NGINX App Protect WAF 署名を必ず更新してください。 これを行う方法の詳細については、このガイダンスを参照してください。 また、WAF ポリシーで「サーバー側コード インジェクション」攻撃タイプが有効になっていることを確認してください。

F5 分散クラウド WAAP

最近リリースされたF5 分散クラウド Web アプリケーションおよび API 保護 (WAAP) は、 F5 の業界をリードする SaaS ベースの Web アプリケーション ファイアウォール (WAF) とボット保護、高度な API セキュリティ、L3-L7 DDoS 防御により、クラウドとエッジ サイト全体に展開されたアプリと API を保護します。 F5 の 1 つの WAF アプローチにより、顧客が導入する F5 製品に関係なく、一貫したアプリケーション セキュリティが保証されます。 そのため、Spring4Shell の脆弱性に対処するためのシグネチャはすでに作成されており、BIG-IP Advanced WAF および NGINX App Protect WAF 向けに提供されているため、Distributed Cloud WAAP でも同時に提供されるようになりました。 Distributed Cloud WAAP のお客様はすでに保護されているため、追加のアクションを実行する必要はありません。

F5 分散クラウド WAF

BIG-IP Advanced WAF、NGINX App Protect、Distributed Cloud WAAP と同様に、 F5 Distributed Cloud WAF は、 Spring4Shell の脆弱性に関連する露出から保護するために必要な署名をすでに取得しています。 これらはデフォルトの WAF ポリシーに含まれているため、追加のアクションは必要ありません。

F5 シルバーライン WAF

F5 Silverlineチームによって必要な緩和策の実装がすでに実施されており、顧客のアプリケーションが Spring4Shell および関連する脆弱性から保護されることが保証されています。 F5 の脅威調査チームおよびお客様と連携して脅威を継続的に監視し、必要な緩和策を適用する準備を整えているF5 Silverline SOC は、お客様の AppSec チームを拡張し、24 時間 365 日体制でお客様のために働きます。 F5 Silverline に関してご質問がある場合は、 support@f5silverline.comまでお問い合わせください。

脅威スタック

最近 F5 が買収した Threat Stack は、検査、検出、レポート機能を提供します。 Threat Stack サービスには、Spring4Shell の侵害が懸念されるかどうかを決定する検出ルールが含まれており、サービスをルートとして起動したり、シェルから実行したり、試行をエスカレートしたりできます。 詳細については、F5 の営業担当者にお問い合わせいただくか、 https://www.threatstack.comをご覧ください。

F5 分散クラウド ボット防御

Spring4Shell のような脆弱性を悪用する試みは、通常、自動偵察から始まります。 F5 Distributed Cloud Bot Defense は最初の防御線です。 自動スキャンを停止できるため、組織内に Spring4Shell の脆弱性のある Web アプリがあるかどうかを調べようとする攻撃者にとっての難易度が高まります。 F5 分散クラウド サービスは、ボットネットを操作する攻撃者の絶えず進化する戦術に対応し、ボット駆動型の自動攻撃に対してリアルタイムで適応できるようにします。

BIG-IP SSL Orchestrator

Spring ライブラリは Java ベースのアプリケーションの大多数で使用されているため、お客様のような組織にとって、それが引き起こす脆弱性と潜在的な悪用の範囲全体を判断することは困難になります。 影響を受けるすべてのアプリケーションを見つけることができれば、それらすべてを更新するのにも時間がかかる可能性があります。 これにより、アプリや組織が脆弱になり、悪用される可能性があります。 F5 SSL Orchestrator は暗号化されたトラフィックを可視化し、暗号化された脅威を阻止します。 ネットワークを通過するトラフィック、さらにはサーバー トラフィックも復号化し、セキュリティ スタックのソリューションに基づいて定義できるセキュリティ チェーンにトラフィックを自動的にルーティングします。 SSLオーケストレーターは、暗号化された脅威に対処するだけでなく、コマンドアンドコントロール(C)サーバーに向けられたトラフィックなど、暗号化された悪意のあるトラフィックも阻止できます。2 ) サーバー。 SSL Orchestrator は CVE-2022-22965 を軽減できるだけでなく、将来の脆弱性や悪用からも保護します。

F5 は、Spring4Shell ( CVE-2022-22965 ) および関連する脆弱性に関する最新情報、および今後発生する可能性のあるエクスプロイトに対する F5 の防御方法と軽減方法について、最新情報をお届けします。

新しい情報が入りましたら、このブログを更新します。 さらに詳しい情報については、次のリソースを参照してください。

K11510688: Spring Framework (Spring4Shell) および Spring Cloud の脆弱性 CVE-2022-22965、CVE-2022-22950、および CVE-2022-22963

K24912123: BIG-IP システムで Spring Framework (Spring4Shell) と Spring Cloud の脆弱性を軽減する