”PowerGhost”ーー 新機能を備えた「ファイルレス型マイニングマルウェア」
Graphics Provided by Vecteezy.com
Kasperskyはブログで、ファイルレス機能を持ち、かつ大規模な企業ネットワークに感染するマイニングマルウェアを発見したと報告しました。
今までも、「Coinminer」や「Wannamine」のように、EternalBlueやWMIを使用したファイルレス機能や感染機能を持つマイニングマルウェアはありました。
しかし、今回発見されたPowerGhostと呼ばれるマイニングマルウェアは、さらに進化しており今までにない機能が追加されています。
ちなみにPowerGhostに関して、海外仮想通貨メディアとして有名なcoindeskも”New Crypto Mining Malware Targeting Corporate Networks, Says Kaspersky”という記事を書いていますが、こちらの記事は概要説明のみ述べられており、PowerGhostに関する技術的な解説は一切記載されていません。
PowerGhostの理解をするためには、マイニングマルウェア技術理解が不可欠であり、先に挙げたcoindeskによる解説記事では不十分です。またKaspersky日本法人による原文の翻訳も公開されていません。
そうした理由から本記事でPowerGhostに関して以下のポイントに絞って解説を行います。
- マイニングマルウェア
- PowerGhostの機能
- EternalBlueの影響範囲
マイニングマルウェアとは
マイニングマルウェアとは、標的端末のリソースを利用して仮想通貨をマイニングするマルウェアです。
仮想通貨をマイニングするには、豊富なリソースが必要になるため攻撃者はなるべく長く、バレずに多くの端末上でマイニングしようと考えます。
そのため、ファイルレス機能を搭載してシグネチャベースのウイルス対策ソフトの検知を回避したり、WannaCryで話題になったEternalBlueのような機能を搭載して、ネットワーク上の他の端末に感染したりします。
また従来のマルウェアと異なり、Keyloggerに代表される端末上のデータ窃取等の動きをせずに、「マイニングのみ」を目的としているのが多いのも特徴の一つです。
有名なマイニングマルウェアとして、以下の4つが挙げられます。
PowerGhostの機能
(PowerGhostのコードの一部。A mining multitoolより)
さて、このセクションではPowerGhostの機能に関して説明していきます。
PowerGhostとは、インド、ブラジル、コロンビア、トルコを中心として感染を広めているマイニングマルウェアです。
PowerGhost自体は、難読化されたPowerShellスクリプトであり、コアとなるコードと、付随するアドオンモジュールで構成されています。
機能としては、以下のような機能を持っています。
自動セルフアップデート
C&C(Command & Control)サーバに新しいバージョンのPowerGhostがあればダウンロードして更新する機能です。感染機能
Mimikatzを使用して、ユーザのアカウント情報窃取し、Windows Management Instrumentation(以下、WMIという)により、ローカルネットワーク内の他の端末に自身をコピーして感染します。 「自身のコピー」とは後述するC&CサーバからPowerGhostをダウンロードする1行で書かれたPowerShellスクリプトのことです。また、PowerGhostは、以下の手順でEternalBlue(MS17-10,CVE-2017-0144)をエクスプロイトする感染機能も備えています。権限昇格
MimikatzとWMIを使って感染する場合、管理者権限やSYSTEM権限が必要になるため権限昇格させます。
権限昇格させる方法として、MS16-032、MS15-015とCVE-2018-8120が使用されます。システムへの足場確立
PowerGhostは、すべてのモジュールをWMIクラスに保存します。
また、1行のPowerShellスクリプトはWMIサブスクリプションに保存され、90分毎に実行されます。
さらに、Kasperskyによると、あるバージョンのPowerGhostはDDoS攻撃も出来るようになっているようです。
しかし、DDoS攻撃をする機能は、他のファイルレスで実行している機能と違って、ローカルに二つのファイルをダウンロードして動作します。
恐らく、「お金儲けのために後付けされたのではないか」と推測されています。
また、Kasperskyは「DDoS機能はテストツールである可能性があり、今後ファイルレスの実装に置き換わるだろう」と述べています。
従来のマイニングマルウェアとの違い
従来のマイニングマルウェアとの違いは、コアコードがある点です。
このコアコードがあることにより、感染時に毎回マルウェアのファイルをダウンロードするのではなく、1行のPowerShellスクリプトによりPowerGhostのbodyとなるコードをハードドライブに書き込まずに感染端末に仕込むことが出来るようになります。
この違いは大きく、この仕組みがあるおかげでハードドライブに痕跡が残りません。更に、Windowsの正規ツールであるPowerShellを使っているため、検知がより困難になるのです。
また、テスト段階ではありますが、DDoS攻撃が出来る点も従来のマイニングマルウェアとは異なります。
先日、本ブログでも触れたように仮想通貨の値段が下落しているため、マイニングマルウェアもマイニングだけでは利益率が悪くなってしまっています。
そのため、お金をさらに稼ぐためにDDoS攻撃が出来るようにしている点は非常に興味深いです。
今後は、潜伏する必要があるため派手な機能は付けられないと思いますが、Botのように機能が増えていく可能性は十分あり得るでしょう。
なぜ未だにEternalBlueが使われるのか
筆者が本記事を執筆している際、「WannaCryによる世界的な感染被害が話題になったにも関わらず、何故未だに対策が取られずにEternalBlueが有効なのか疑問に思いました。
そこで、Shodanを使ってWannaCry以降EternalBlueの被害を受ける端末数が減っているのかを調べてみました。
今回は、2017年5月24日と2018年7月28日時点のEternalBlueの影響を受ける端末数を比較しています。
まず結論から申し上げますと、EternalBlueの影響を受ける端末数は増えています。以下、そう結論付けるに至った根拠を説明していきます。
以下に示す図1を見て頂ければ分かる通り、EternalBlueの影響を受ける端末の台数は2017年5月24日時点と2018年7月28日を比べると全体的に増えています。なんと日本に至っては43,574台から90,002台へと、2倍以上も増えています。
(図1 EternalBlueの受ける影響を受ける端末数(国別))
そこで、全体的に増えていることから、OSのサポート期限が影響しているのかと思いOS別の端末数も見てみました。
以下に示す図2を見て頂ければ分かる通り、順位は変わっているものの、ランキングに入っているOS自体はほとんど変わっていません。
この結果から判断すると、何らかのOSのサポート切れが近づいて移行したことにより、設定不備が生じた事が原因では無さそうです。
(図2 EternalBlueの受ける影響を受ける端末数(OS別))
仮に1年の間に図2に示したOSを搭載する端末の母数が増えたと仮定しても、新しくシステムをリリースをするのであれば、最新にアップデートされたOSを使用しますし、そもそもリリース前に脆弱性診断をするはずです。
そのため、1年後にこれだけ多くのEternalBlueの影響を受ける端末が増えることは考えにくいでしょう。
以上を踏まえた筆者の意見では、EternalBlueの影響のある端末がわずか1年で増加した原因の一つとして、Shodan側のスキャン方法の変更があったのではないかと推測しています。
執筆時点では増加した理由は不明ですが、多くの端末が未だに影響を受けるという事実自体には変わりはありません。
今後もEternalBlueを使用した攻撃は絶え間なく続く可能性が高いため、パッチ適用やSMBv1の使用停止等の対策を取ることをオススメします。
ちなみに、脆弱な端末を検索する際に便利なShodanのアカウント登録方法はこちらの記事で解説しています。まだ登録されていないようであれば、ぜひこちらの記事を参考にしながら登録してみて下さい。
【参考】
A mining multitool - Securelist
ファイルレスマルウェアとは?〜非マルウェア型攻撃を理解する〜 | BLOG | サイバーリーズン | EDR(次世代エンドポイントセキュリティ)
「ファイルレス活動」を備えた仮想通貨発掘マルウェア「COINMINER」を確認、「EternalBlue」を利用して感染 | トレンドマイクロ セキュリティブログ
Cryptomining: Harmless Nuisance or Disruptive Threat?
暗号通貨マイニングマルウェア「Adylkuzz」がEternalBlue/DoublePulsarを介して拡散中 | Proofpoint Japan