セキュリティマイスターコラム 第15回

Windows 10のランサムウェア対策に潜む危険性

世界中で広く使われている「Windows 10」。半年ごとに定期的に実施されるWindows 10の大型アップデートでは、様々な機能追加や改良が行われています。今、注目のランサムウェア対策機能もそのひとつ。ところが、この機能をすり抜けて攻撃される危険性があることを富士通のセキュリティマイスターが発見しました。発見に至ったきっかけや検証の経緯を解説します。

注目のランサムウェア対策の新機能を検証

情報セキュリティの重要性が日々高まる中、セキュリティ専門家による最新の研究発表や国際交流の場として、世界各地で多くのセキュリティカンファレンスが開催されています。私が投稿した論文「An Inconvenient Truth:Evading the Ransomware Protection in Windows 10」が複数のイベント主催者の目に留まり、2018年秋に開催されたセキュリティカンファレンス「GrrCon」「ToorCon」「DerbyCon」において、デモを交えて発表しました。今回は、その紹介です。

論文では「Windows 10」に実装されたランサムウェア対策機能に潜む危険性について指摘しています。私はセキュリティの世界に入る前は、ネットワーク関連を中心にWindows系の開発に従事しており、ドライバ層からアプリケーション層までほぼ全ての層の開発を経験しました。その経験が、今回の発見へと結びついたと考えています。

2017年に世界中でワーム型ランサムウェア「WannaCry」が猛威を振るいました。
その秋、 Windowsの大型アップデート「Windows 10 Fall Creators Update」がリリースされ、この中にランサムウェア対策機能「Ransomware protection」が導入されていました。 この新機能が、どのような動作をするのか気になり調べてみることにしました。

保護されているはずのフォルダーにアクセスできるアプリケーションが存在

Ransomware protection機能は、「Windows Defender セキュリティセンター」→「ウイルスと脅威の防止」→「ランサムウェアの防止」より利用できます(日本語版)。この機能は、保護したいフォルダーを指定し、その保護されたフォルダーにアクセスできるアプリケーションを指定することで、ユーザーが意図しないアプリケーションによるフォルダーアクセスを禁止する仕組みです。

保護されたフォルダーはデフォルトでDocumentsやPicturesなどユーザーのデータフォルダーが登録されています。保護されたフォルダーには、管理者権限を持つユーザーでもアクセスできなくなります。

保護されたフォルダーにアクセスできるアプリケーションは、デフォルトでは1つも登録されていません。しかしここで1つの疑問が生じました。ユーザーのデータフォルダーにアクセスできるアプリケーションが1つも無かったら何の操作もできなくなってしまう。

そこで検証をしてみると、Ransomware protectionが有効になっているにも関わらず、保護されたフォルダーにアクセスできるアプリケーションが存在することが分かりました。このようなアプリケーションは複数存在し、ホワイトリスト(保護されたフォルダーにアクセスできるアプリケーションの一覧)として管理されているのではないかと推測します。

そうだとすれば、「ホワイトリストにあるアプリケーションにマルウェアを仕掛ければ、保護されたファイルにもアクセスできてしまうのでは?」と考え、さらに調査を進めました。

エクスプローラを悪用すれば、ユーザー権限で攻撃が可能

ホワイトリストにどんなアプリケーションが含まれているのかは非公開ですが、エクスプローラなら、通常すべてのファイルにアクセスできるので、可能ではないかと推測しました。予想どおり、Ransomware protectionが有効の状態での保護されたフォルダーへのアクセスに成功しました。

「エクスプローラを悪用すれば、Ransomware protectionをすり抜けられる」、それがわかった時点で、さらに一歩進んで考えました。まず、悪意あるDLLファイルを置きます。次に、コンピュータのレジストリーを書き換え、「(エクスプローラに対し)あるDLLを読み込む」と設定します。これはユーザー権限で実施することができます。すると、エクスプローラは悪意あるDLLを読み込んでしまいました。このように、ユーザー権限でレジストリーを書き換えるだけで、攻撃もできてしまうのです。

「脆弱性」をより広くとらえ、新たな脅威に備える

こうした検証を踏まえて、私は「Ransomware protectionの脆弱性」に関するレポートをマイクロソフトセキュリティレスポンスセンター(MSRC)に提出しました。しかし、MSRCからは「脆弱性」ではないとの回答でした。MSRCはアカウントベースの境界、つまりアカウントの権限を越えることができてしまう問題のみを「脆弱性」と定義づけています。

今回の私の検証である「レジストリーを書き換えて悪意あるプログラムを読み込む」という行為は、あくまでも、ユーザーが自身の権限の範囲内で実行したことに起因する結果であるため「脆弱性」とは認められませんでした。

しかし、Ransomware protectionはランサムウェアを防止できる機能として搭載されたものです。それにも関わらず、ユーザー権限で攻撃される危険性があることは事実です。
このことからも、既存のアカウントベースの境界で線引きをするのだけではなく、新たな境界が出現した場合には、その境界に対してきちんとケアを行うことが新たな脅威への備えになるのではないでしょうか。

危険回避のための対策

では、この危険を回避するために私たちは何をすればいいでしょうか。
まず、「レジストリーを監視して不正な書き込みがないかをチェックする」ことです。これは、Windowsの機能でも対応できます。重要なのは、各レイヤーを俯瞰的に見ること、新しいセキュリティ対策などの機能が追加されたときには、その機能が正しく稼働するのかを検証することです。

特に、独自アプリケーションを社内で使用している場合は、追加された機能の全てを検証することが望ましいです。しかし、そこまでのリソースを確保することは難しいのが現状でもあります。だからこそ、リスクを発見したらその情報を発信していくことが重要だと考えています。これからも、新機能を検証し、調査結果などを積極的に発信していきます。

しかし上記対策は根本的な対策ではありません。富士通では、今回の件も含め同じような状況の問題も脆弱性の一種であるとしてマイクロソフトに働きかけていきます。また、ソフトウェアなどの安全性を日々確認し、リスクがあれば、それを公に発表する活動をしています。また、パートナー企業にも情報共有することで、セキュリティ対策を進めています。

2018年10月22日

富士通システム統合研究所
研究員
セキュリティマイスター(ハイマスター)
青山 荘也

Windows系(主にネットワーク関連)の開発部門からサイバーセキュリティの研究部門に転属。今までの経験を活かし、Windowsの脆弱性に関する研究を行っている。
過去にAVTOKYO、BSidesLV、OWASP Sendaiでの講演や、鹿児島大学での情報セキュリティ講義のゲスト講師の経験がある。得意分野はネットワーク。ドライバ層からアプリケーション層まで、ほぼ全ての層の開発を経験。

[写真]

「セキュリティ」に関するお問い合わせ・ご相談

Webでのお問い合わせ

お電話でのお問い合わせ

ページの先頭へ