清水理史の「イニシャルB」
ランサムウェアの暗号化をOSが回避! Windows 10秋の新機能を WannaCryで実際にテストしてみた
その名は「コントロールされたフォルダーアクセス」、Fall Creators Updateで一般公開
2017年8月7日 06:00
Windows 10 Build 16232に新機能として追加された「コントロールされたフォルダーアクセス」は、ランサムウェアによるデータ暗号化の被害を緩和することが期待できる新機能だ。実際に「WannaCry」の検体を使用して、どのフォルダーが保護されるのか? どのような条件で動作するのか? について検証してみた。
Build 16251で実用可能になった「コントロールされたフォルダーアクセス」
ランサムウェア対策には、OSとしての対策が不可欠――。
おそらく、そうした判断の現れなのだろう。Windows 10の次期バージョンとして予定されている「Windows 10 Fall Creators Update」に搭載予定の「コントールされたフォルダーアクセス」が、開発者向けに提供されているWindows Insider Previewで、いよいよ使えるようになった。
この機能自体は、7月上旬にリリースされたBuild 16232で初めて実装されたものだが、続くBuild 16241でUIが開けなるなるという不具合があり、7月末に更新されたBuild 16251で、再び使えるようになった。
ここのところ、週末にアップデートが繰り返される状況の中、本稿が掲載されるタイミングで更新されるであろう別のBuildで動作が変更されている可能性はあるが、興味深い機能となるので、Build 16251時点の詳細をまとめておく。
なお、基本的な使い方については、僚紙である窓の杜の「ランサムウェア対策が「Windows 10 Fall Creators Update」に追加! さっそくトライ」でも詳しく紹介されているので、合わせて参照していただきたい。
ホワイトリストでフォルダーアクセスを制限
「コントロールされたフォルダーアクセス」は、その長い名前の通り、フォルダーへのアクセスを制御する機能だ。
いわゆるホワイトリスト方式のアクセス制限機能で、信頼できるプログラム以外がフォルダーにアクセスするのを禁止する機能となる。
データ暗号化以外の方法(ブートロックなど)で金銭を要求するランサムウェアもあるが、一般的には、ランサムウェアは感染後に「ドキュメント」の文書や「ピクチャ」の写真などのデータを勝手に暗号化して、交渉の道具とする。
セキュリティ対策ソフトの中には、この振る舞いを検知して実行を阻止したり、あらかじめ配置した“おとりファイル”の暗号化を検知して動作を阻止するといった対策が行われるが、「コントロールされたフォルダーアクセス」の機能は、これらよりもさらに根本的な対策と言える。
「Windows Defenderセキュリティセンター」で、いったん機能を有効化すれば、「ドキュメント」や「ピクチャ」「OneDrive」など、一般的なほとんどのフォルダーに対してのアクセスが基本的に禁止される。
こうしてアクセスを基本的に禁止にしておけば、万が一、ランサムウェアがデータを暗号化しようとしても、その処理をブロックできるというわけだ。
強盗に押し入られたものの、大切なものはしっかりと鍵がかけられた金庫の中……、とでも言った状況だろうか。
とは言え、無条件にすべてのアプリからのアクセスを禁止してしまっては、文書や写真などのデータをどこにも保存できなくなってしまうため、使い勝手が悪い。そこで、「コントロールされたフォルダーアクセス」では、その例外として「信頼する」アプリからのアクセスだけは許可する仕様となっている。
この「信頼する」という条件についての詳細ははっきりしないが、基本的にはWindowsストアで配布されている、いわゆる“ストアアプリ”であると考えればいい。
先の窓の杜の記事でも検証しているが、例えばテキストエディターの定番的アプリ「秀丸」には、従来からのデスクトップアプリと、ストアで配布されているアプリの2種類がある。これを利用すると非常に分かりやすいが、デスクトップアプリでは、作成したデータを「ドキュメント」など制御対象のフォルダーに対して保存しようとすると、エラーメッセージが表示されて保存ができない。一方、ストアアプリを利用すると、何の問題もなくデータを保存できる。
この機能は徹底していて、たとえMicrosoft製のアプリと言えども、この条件を満たさなければ、フォルダーにアクセスできない。
試しに、デスクトップアプリである「Word 2016」や「Excel 2016」がインストールされたPCで、この機能を有効化してみたが、これらのアプリで作成した文書やシートを保存しようとすると、エラーではじかれてしまった。
筆者宅のPCには、NASの同期ソフトや画面キャプチャーソフトなど、たくさんのデスクトップアプリがインストールされているが、これらも軒並みアクセスが禁止され、データの保存や変更などの動作がすべて禁止されることを確認できた。
不用意に「オン」にすると、いつものようにPCを使うことが困難になることは確実だが、もちろん回避策は用意されている。
「コントロールされたフォルダーアクセス」では、デスクトップアプリを手動で許可対象として指定することが可能になっている。利用するアプリが多い場合はなかなかの手間で、あまり使用頻度の高くないアプリまで登録するのは大変なので、できれば一時的に許可するような仕組みを用意してくれるとありがたい。
「オン」で「オン」が重要!
では、実際にランサムウェアに対して、どこまで効果があるのかを検証してみよう。
少し前に世間を騒がせた「WannaCry」を検体として用意し、これを実際にPCに感染させて、データが暗号化されるかどうかを確認してみた。
検証0:事前チェック
WannaCryはすでに対策が広く知られているマルウェアとなるため、そのまま実行してもWindows Defenderによって動作が遮断されてしまう。このため、まずはWindows Defenderのすべての保護機能(リアルタイム保護、クラウド提供の保護、サンプルの自動送信、コントロールされたフォルダーアクセス)を無効化して実行してみた。
この状態では、WannaCryの実行を阻止することはできず、予想通り、ドキュメントやピクチャ、OneDriveなど、ほとんどのデータが暗号化される結果となった。
検証1:「コントロールされたフォルダーアクセス」のみオン
続いて、「コントロールされたフォルダーアクセス」のみを有効化し、リアルタイム保護、クラウド提供の保護、サンプルの自動送信をオフにした状態でテストしてみた。
このテストでは、残念ながら、WannaCryの動作を止めることはできず、すべてオフのときと同様に、ドキュメントやピクチャなどのデータがすべて暗号化されてしまった。
「コントロールされたフォルダーアクセス」は、単体でオンとオフを切り替えることができるが、単体でオンにするだけでは効果がないようだ。
検証2:「リアルタイム保護」と「コントロールされたフォルダーアクセス」をオン
次は、「コントロールされたフォルダーアクセス」に加えて「リアルタイム保護」をオンにしてみた。
ただし、単にリアルタイム保護をオンにしただけでは、WannaCryの実行そのものが阻止されてしまう。このため、WannaCryが格納されたフォルダーをWindows Defenderで「除外」に設定することで、WannaCryを実行可能な状態にしてテストした。
結果は、成功で、WannaCryは実行されたものの、データの暗号化は無事に阻止することができた。今後のBuildで変更される可能性もあるが、現時点では「リアルタイム保護」が動作していないと、「コントロールされたフォルダーアクセス」も正常に機能しないようだ。
「リアルタイム保護」は有効が標準設定で、いったん無効化しても再起動で自動的にオンに戻されるため、オフになる状況は想定しにくいが、基本的に「(リアルタイム保護が)オンで(コントロールされたフォルダーアクセスが)オン」が条件ということは頭に入れて置いた方がよさそうだ。
「D:」などバックアップ先も絶対保護対象に!
このように、動作条件にも注意必要な「コントロールされたフォルダーアクセス」だが、対象となるフォルダーにも注意が必要となる。
設定画面では、「既定ではWindows システム フォルダーが保護されています」と、あいまいな表示になっており、対象がはっきりしない。このため、一般的なフォルダーに対して書き込みテストをしてみたのが以下のリストだ(秀丸のデスクトップアプリを使用)。
フォルダー | 警告の有無 | 保護の状況 |
デスクトップ | 警告あり | 禁止 |
ドキュメント | 警告あり | 禁止 |
ビデオ | 警告あり | 禁止 |
ミュージック | 警告あり | 禁止 |
ダウンロード | 警告なし | 書き込み可 |
3Dオブジェクト | 警告なし | 書き込み可 |
OneDrive | 警告なし | 書き込み可 |
c:[任意] | 警告なし | 書き込み可 |
Dドライブ | 警告なし | 書き込み可 |
ポイントは、書き込みが可能なフォルダーがいくつか存在する点だ。現状はInsider向けのプレビュービルドであるため、単なる設定漏れのように思えるが、「ダウンロード」や「3Dオブジェクト」、「OneDrive」などは、書き込みが可能なので注意が必要だ。
また、c:[任意]やDドライブなども書き込みが可能だった。ただし、これらはシステムフォルダーではないため、正式リリース後も書き込み可能であることが想定される。
ただし、Dドライブなどをファイル履歴のバックアップなどに活用している場合は、忘れずに「コントロールされたフォルダーアクセス」の対象に設定しておくべきだ。
先にテストしたWannaCryもそうだが、ランサムウェアは接続されたドライブすべての暗号化を試みることが多いため、ここを対象にしておかないと、バックアップ済みのデータが暗号化され、履歴からのファイルの復元なども不可能となる。
同様に、NASやファイルサーバーなどの共有フォルダーも保護対象として設定することができるので、重要なデータが保存されている場合は、忘れずに登録しておこう。
なお、保護対象のフォルダーにファイルを保存しようとした場合の警告は「ファイルが見つかりません。ファイル名を確認して再実行してください」というもの。タイミングによっては、通知センターにブロックされたことが表示される場合もあるものの、「コントロールされたフォルダーアクセス」による遮断であることが分かりにくいメッセージが表示される。このメッセージは改善してほしいポイントだ。
敷居を上げておくことは大切
以上、Windows 10 Insider Preview Build 16251を使って、「コントロールされたフォルダーアクセス」の機能を実際に検証してみたが、まだ開発途中の機能であるという印象はあるものの、これが実装されればランサムウェアの勢いも少しは静まることになりそうだ。
もちろん、この機能を想定したランサムウェアが登場することも予想はできるが、攻撃者が越えなければならない敷居として存在することで、攻撃コストを上げることができるだけでも、そのメリットは大きいと言えるだろう。
また、この機能が本格的に普及すれば、ストアで配布されるアプリの普及が一気に進むかもしれない。手動登録で任意のアプリを登録し、保護対象フォルダーへのアクセスを許可できるとは言え、それは面倒だし、初心者にアプリの実行ファイルそのものを探して登録させるのも現実的ではない。であれば、積極的にストアアプリを使おうという方向に向かうはずだ。
ランサムウェア対策としても有効だと思えるが、それ以外にも思惑がありそうな機能と言えそうだ。