Windowsセキュリティ・ワンポイントレッスン 第1回 ハイバネーションの危険性(情報元のブックマーク数)

塩月さんのハイバーネーションの脆弱性が存在とのこと。

お仕事で外回りなどをされている方などは特にそうでしょうが、いちいちOSをシャットダウンするのは手間と時間がかかりますので、多くの場合、ログオンしたまま一時停止の状態にしておき、パワーオン後すぐさま継続してお使いになっているかと思います。そのようなケースでよく利用されるのが「ハイバネーション」(いわゆる休止状態)ですが、ハイバネーション機能は注意して使わないと思わぬ情報漏洩に結びつきかねません。

今回の「Windowsセキュリティ・ワンポイントレッスン」は、このハイバネーション機能の危険性について解説します。

Windowsセキュリティ・ワンポイントレッスン 第1回 ハイバネーションの危険性

ハイバネーションファイル=メモリの内容ってことで、それを解読すれば・・・ってネタですね。

さてハイバネーション状態のノートPCを紛失し、悪意を持った攻撃者の手に渡ってしまったとしましょう。その際に直面する脅威として、どのようなものがあるでしょうか?
前述の通り、ハイバネーション状態ではメモリの内容がハードディスクに保存され、再開時にはその情報がメモリへと復元されます。ハードディスク上では、システムドライブ(通常はCドライブ)のルートフォルダ直下にある「hiberfil.sys」というファイルがその保存場所です。つまりハイバネーションファイル(hiberfil.sys)には、ハイバネーションを行った際のメモリ内容と同等の情報が記憶されていることになります。

Windowsセキュリティ・ワンポイントレッスン 第1回 ハイバネーションの危険性

ふむふむ・・・

さらに暗号化システムが暗号化鍵をメモリ中に保持しているような場合は、ハイバネーションファイルから暗号化鍵を探し出して抽出し、ハードディスク等の暗号化を解除する攻撃手法が考えられます。2008年に公開された「Cold Boot Attacks on Encryption Keys[2]」という論文では、物理メモリ中から暗号化鍵を抽出してBitLockerやTrueCryptといったディスク暗号化システムを攻撃する手法が紹介されていますが、この手法はハイバネーションファイル自体が暗号化されていない限り、ハイバネーションファイルに対して応用することも可能だと思われます。

近年、PCのメモリ内容を解析することで、マルウェアの存在を検出したり、あるいはコンピュータフォレンジックを効果的に実施したりするための研究が多数行われており、そのためのツールも各種開発されています[3]。オープンソースとして公開されている「Volatility Framework[4]」というツールもそのうちの一つですが、このようなツールを使えばハイバネーションファイルを物理メモリイメージに復元し、その内容をさまざまな角度で解析することが可能となります。

Windowsセキュリティ・ワンポイントレッスン 第1回 ハイバネーションの危険性

やっぱり、シャットダウンですよね。

対策

以上述べてきましたとおり、ハイバネーション機能の使用はさまざまなリスクを伴います。最も安全な停止方法がOSのシャットダウンであることは言うまでもないですが、それでは身も蓋もありませんので、ここではどうすれば安全性と利便性、およびコストとの折り合いをつけることができるかを考えてみましょう。

Windowsセキュリティ・ワンポイントレッスン 第1回 ハイバネーションの危険性

screenshot