■その道のプロしか知らない,知らずにいるとあとで怖い思いをする「常識」を紹介する集中連載の第2回。
■今回は,Internet ExplorerやOutlook Expressに保存しているパスワードを簡単に取り出されないようにする方法を紹介する。
IEやOEに記憶したパスワードは
簡単に取り出せる
認証が必要なWebサイトにアクセスする場合,Internet Explorer(IE)ならユーザーが入力したIDとパスワードを記憶させられる。次回そのサイトに行くと,パスワードをIEが自動的に入力する機能だ。この機能は「オート・コンプリート」と呼ばれており,たくさんのパスワードを自分で覚えておかなくて済むので非常に便利な機能である。利用している人も多いだろう。
これらの記憶させたパスワードは,当然ながらパソコンの中に保存されているのだが,どこにどのような形で保管されているかご存じだろうか。
Windowsにはこのような秘密の情報を保存するための「Protected Storage」という機能が用意されている。IEに記憶させたパスワードのほか,IEでフォームに入力した履歴,Outlook ExpressやWindowsメッセンジャーなどで使用しているIDやパスワードなどが,このProtected Storageに保存されている。
Protected Storageがデータを保存している先は,レジストリ・データベースである。場所は「HKEY_CURRENT_USER\Software\Microsoft\Protected Storage System Provider」の下であり,ここにSIDのサブキーが作られていて,ユーザーの情報がまとめて保存されている(
図2)。
ただしレジストリ・エディタでここを参照しても,そのままでは何もデータが存在しないように見える。サブキーにはアクセス制限がかけられていて,システム権限以外ではこのレジストリを見られないよう設定されているためだ。
サブキーに対してアクセス権を追加すれば詳細を参照可能だ。参照したいサブキーを右クリックして[アクセス許可]を選択し,アクセス権を与えたいユーザーを追加すればよい。
ユーザーごとのキーの下には「Data」というサブキーがあり,その下にはアプリケーションごとのIDに基づくサブキーが続いている。例えばInternet Explorerの場合は「e161255a-37c3-11d2-bcaa-00c04fd929db」というIDが使われている。さらにこの下にサイトのURL名に基づくサブキーが並んでいて,そこにそのサイトで入力したアカウント情報が暗号化されて保存される(
図3)。