2017年5月に世界各所で被害を巻き起こしたランサムウェア(利用者に身代金を要求するマルウェアの一種)「WannaCry(ワナクライ)」。概要は既報のとおりだが、改めて時系列を振り返ってみたい。WannaCryはWindowsのファイル共有プロトコルSMBバージョン1の脆弱性を利用したマルウェアだが、Microsoftは2017年3月にセキュリティ更新プログラム「MS17-010」をリリースしていた。つまり、WannaCryの被害にあったのは、Microsoftに強いセキュリティ意識を植え付けた「Code Red」(Microsoft IISのセキュリティホールを突いたワーム。2001年7月)と同じ、パッチ未適用の環境なのである。

IPAによるWannaCryの感染デモンストレーションより。LAN上のPCが感染していく

WannaCryを開発したと言われているThe Shadow Brokersだが、SMBの脆弱性を突く攻撃ツールは米国家安全保障局(NSA)が開発したという見解がある。昨今のマルウェアを見ると一昔前の"技術的に長けた人々"という印象は霧散してしまった。彼らの目的は金銭や国家に対するサイバー攻撃であり、そこで用いられる攻撃ツールはBitcoinで売買されている。WannaCryもEternalBlueなどいくつかのツールをThe Shadow Brokersが組み合わせ、ネット上にばらまいたのだ。

グローバルレベルで最初にWannaCryを発見したのは、Marcus Hutchinsのセキュリティ研究者Marcus Hutchins氏と言われているが、その動作は情報処理推進機構(IPA)の解説が分かりやすい。WannaCryはSMBの脆弱性を利用し、TCPポート445経由で他のPCへ次々と感染して、ファイルを暗号化するプログラムを実行する(拡張子「WANCRY」を付与する)。次にユーザーへ暗号化したファイルを復号するための鍵を入手するには、一定時間内に身代金をBitcoinで支払わせ、攻撃者は金銭を手に入れる仕組みだ。その被害は世界中で確認されており、日本はもちろん欧米やアジア、ロシア、南米など世界約150カ国まで広がっている。英国では医療機関でコンピューターが使用できず、患者を他の病院へ搬送したケースも散見された。

別のランサムウェア「Petya」によるファイル復号化手順の案内。こちらはTorを利用している

また、初期のWannaCryには、侵入発覚を回避するためのキルスイッチ(起動回避回路)が組み込まれていたと言う。一部のサンドボックス環境(ソフトウェアテストなどに用いるテスト環境。仮想環境など)を検出すると動作を停止し、自身の存在を隠蔽する仕組みだ。多くのマルウェアはキルスイッチを供えることで、セキュリティ研究者の解析を妨げていたが、WannaCryに関しては早期にキルスイッチドメイン(キルスイッチが利用するドメイン)を分散攻撃して、被害期間を短縮させている。

さて、もう少しWannaCryの仕組みを掘り下げよう。SMBの脆弱性を突くEternalBlueは、Windowsカーネルやデバイスドライバーが使用する非ページプールメモリでオーバーフローを発生させ、本来実行できないはずのShellcode(脆弱性悪用処理)へのアドレスを上書きし、実行する。その結果としてPC上のファイルは暗号化され、他のPCへ侵入経路を作り出すバックポートツール「Doublepulsar」の散布も同時に行っている。残念ながらすべての人々に英知を与えることが不可能なことと同様に、すべてのバグを駆逐することは難しい。そのため昨今のWindowsはASLR(アドレス空間配置のランダム化)やDEP(データ実行防止)、SEHOP(構造化例外処理の上書き保護)といったサイバー攻撃の緩和策を供えるようになった。

ASLRのイメージ。メモリアドレスをランダムにすることで、Shellcodeの実行アドレスも固定される、攻撃が困難となる

もっともこれらのセキュリティ緩和策は万全ではない。ASLRはWindows Vistaで搭載し、Windows 7以降はアドレス空間の拡大に至っているが、Windows 8.xまではEMET(Enhanced Mitigation Experience Toolkit)の導入が必要だった。そのため、WannaCryの被害にあったOSの大半はWindows 7である。Microsoftは重大性を鑑みて、サポートを終了したWindows XPやWindows Server 2003などにもセキュリティ更新プログラムを提供。日本政府もWannaCryの世界的被害を踏まえて、亜種に感染しないよう注意喚起を行っている。具体的にはセキュリティ更新プログラムの適用や、未適用PCのインターネット接続遮断およびプロセスの監視。ルーターの併用やTCPポート445の遮断だ。

一般的なルーターでは、SMBが使用するTCPポート445を塞いでいる

ただし、筆者はこれだけでは対策不足だと考える。セキュリティ対策とサイバー攻撃技術は日進月歩で進化し、ユーザーがいくら対策を講じても後手に回ってしまうのが現状だ。そのため、最初からセキュアな製品の利用を強く推奨したい。例えばOSであれば、Windows 10を選択することで、カーネルベースのASLRやDEPをサポートし、事前にセキュリティ対策を講じた状態となる。また、2017年9月17日(現地時間)リリース予定の、Windows 10 Fall Creators Updateでは、各セキュリティ緩和策が利用者レベルで設定可能になる予定だ。

次の機能更新プログラム「Windows 10 Fall Creators Update」では、ASLRなどエクスプロイト保護機能を標準搭載する

過去の歴史を見ても形を変えたマルウェアは常に新たな隙を狙って登場する。WannaCryの世界的被害は衝撃的だったが、つまるところは適切にセキュリティ修正プログラムを適用し、常に最新のセキュリティ製品を導入しなければならない、ということは肝に銘じておかなければならない。

阿久津良和(Cactus)