conf t

インフラエンジニアのメモ

WannaCryに感染してみた

f:id:monaski:20170523223924p:plain

WannaCryの検証、分析記事はブログ、youtube等で沢山ありますが、
自分でもやってみたくなったので試しました。

やること

検証マシンをWannaCryに感染させ挙動を検証する

※検証手順については細かいところは省いています。
※WannaCryはネットワークを通じて他のマシンを感染させようとするため不用意に実施すると危険です。必ず隔離された環境で実施し、実施する場合は自己責任でお願いします。

課題

(1)他のマシンに感染するといけないので、隔離した安全な環境で実施する必要がある
WannaCryは内部ネットワーク内やインターネットのホストを探索し、他のホストに感染を広げようとします。
そのため隔離した環境で検証をしないと、自分が加害者になってしまいます。
今回はESXiでWindows7仮想マシンを作成し、もろもろの準備をした後仮想マシンをネットワークから切断することで隔離した環境で試験します。

(2)検体をどこで入手するか
以下サイトに多数の検体がアップロードされています。
無料アカウントを作成すればダウンロードできるようになります。
https://www.hybrid-analysis.com/
Virustotalからもダウンロードできますが、Premiumアカウントを持っていないとダウンロードできません。

検証手順

(1)ESXiにWindows7仮想マシンを作成する
(2)仮想マシンに以下をダウンロードし、インストールする
・ProcessHacker
Wireshark
・apateDNS
・FakeNet
マルウェア検体(ダウンロードのみ)
(3)仮想マシンネットワークアダプタをESXi上から削除しどこにもつながらないようにするか、どこにも接続がないネットワークをESXiで新規作成し
そのネットワークに接続させる
(4)仮想マシンのスナップショットを作成する
検証をやり直しできるようにするため、準備完了時の状態でスナップショットを作成しておく
(5)仮想マシンにてネットワークアダプタを表示しインターネットに接続されていないことを確認する
仮想マシンにて、接続しうる内部ホスト、インターネットにpingし疎通しないことを確認することで、
仮想マシンが内部・インターネット双方から隔離されていることを確認する。
(6)ProcessHacker、Wiresharkを起動しプロセス監視、キャプチャを開始する。
(7)マルウェアを実行する。ProcessHacker, Wiresharkにて挙動を観察する。

マルウェア実行前 f:id:monaski:20170523222517p:plain

マルウェア実行直後。実行中のサービス数が1つ増えた。 f:id:monaski:20170523222548p:plain

mssecsvc2.0というサービスが作成されました。 f:id:monaski:20170523222649p:plain

oteatyfg537というサービスが作成されました。 f:id:monaski:20170523222824p:plain

皆さんおなじみの感染後の画面です。ファイルの拡張子が.WNCRYになり暗号化されました。
カウントダウンも始まりました。
ちなみに感染後にファイルを新規作成しても、そのファイルもすぐ暗号化されます。
f:id:monaski:20170523223924p:plain

感染後のデスクトップ画面。 f:id:monaski:20170523223117p:plain

ファイルが暗号化されてしまった f:id:monaski:20170523222922p:plain

ゴミ箱にもファイルがありましたが、空にされました f:id:monaski:20170523223010p:plain

ReadMeファイルが作成されました。$300のビットコインを支払うよう書かれています。
f:id:monaski:20170523223106p:plain

ARPで同一セグメント内のマシンを探索しています f:id:monaski:20170523222842p:plain

apateDNSとfakeNetを起動しキルスイッチへの接続をシミュレーションしたところ、
マルウェアを実行しても感染せず暗号化もされませんでした。 この検体のキルスイッチは以下でした。
www[.]iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea[.]com f:id:monaski:20170524013230p:plain