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

 via 2009-04-20 - naoeの日記。うわ、こういう発想はなかった。考えてみれば当たり前なんだけど、その当たり前に気付くのがプロの発想なのだなぁ。しがないど素人としては、せめてアンテナだけは高くしておこう。

ハイバネーション状態から復帰する際、一般的にはログオンパスワードを入力しなければなりません。つまり復帰時にユーザ認証の処理が行われ、そのチェックを通って初めてハイバネーションを行う直前の状態に戻ることができます。ところでこの「ユーザ認証の処理」を行うプログラムコードはどこにあるかというと、当然のことながらメモリの中にあります。ハイバネーションからの復帰時にメモリの内容をどこから持ってくるかというと、ディスク上のハイバネーションファイルから読み込んできます。すなわち、ディスク上のハイバネーションファイルの中にある「ユーザ認証処理を行うプログラムコード(msgina.dllやmsv1_0.dllなど)」を改変することにより、復帰時に実行されるユーザ認証処理をバイパスし、ユーザ認証なしでハイバネーション前の状態(ユーザがログオンして操作している状態)に戻ることができてしまいます。