TrueCryptで暗号化ユーザープロファイルを運用

TCGINAとTrueCryptで暗号化したユーザープロファイルを運用する。



概要:
TCGINAを使うと、IEキャッシュ、ユーザーレジストリ、マイドキュメントその他ユーザープロファイルをTrueCrypt暗号化ボリュームに格納できる。
以下にTCGINAのインストール手順を記す。

参照:TrueCrypt Forum: Mount volume before login





TrueCryptは暗号化ボリュームを作成するソフトである。
フリーながら高機能で、日本語化するためのファイルも公式で配布されている。

TrueCryptを利用すれば、通常のデータだけでなく、ユーザープロファイル(各ユーザーのレジストリハイブやマイドキュメント)も暗号化ボリュームで運用できる。

しかし、標準環境で暗号化されたユーザープロファイルを利用するには、
一旦通常ユーザーでログオンしてTrueCryptを起動
→秘匿ユーザーのユーザープロファイルの入ったボリュームをマウント
→通常ユーザーをログオフ
→秘匿ユーザーでログオン

と、少々面倒な操作が必要である。

この操作を省略してくれるのがTCGINAである。このソフトはTrueCrypt Forumのracoon氏が作成した。

TCGINAを使うと、以下のように秘匿ユーザーへのログオンが簡単になる。
・ログオンする際TrueCryptを自動的に起動して、ユーザープロファイルを記録した暗号化ボリュームをマウントする。

・WindowsのログオンパスワードとTrueCrypt暗号化ボリュームのパスワードを同じものにしておけば、パスワード入力は最初のログオン時だけですむ。

※安全を考慮するなら、ログオンパスワードとTrueCryptのパスワードは別にしておいた方がよい
(Windowsのログオンパスワードを解析するツールも存在する。)
ログオンパスワードでマウントできなかった場合は、TrueCryptパスワードを入力するダイアログが現れる。

※TCGINAの挙動の詳細についてはこちらを参照。


※本ページは、「フリーウェアを利用してユーザープロファイル領域を暗号化ボリュームに格納する」という技術的興味からその手法を解説したものであり、絶対的に安全なものとして推奨しているわけではありません。
 以下の手法を実行したとしても、意図しない秘密データの漏洩はありえます。
 また、ログオンができなくなったり、データの紛失その他のトラブルが生じる可能性もあります。(以下の手法の試行は自己責任でお願い致します)
より高い安全性を求める場合は、TrueCryptのシステムドライブ暗号化を利用してください。


(TCGINAを利用する際は以下の点に注意)

  • TCGINAの利用に際しては、レジストリやシステムファイルをいじることになる。データが破損し、暗号化したユーザープロファイルにログオンできなくなる可能性もあるため、利用は自己責任で。
  • (特に、TrueCryptに限らず仮想暗号化ドライブによる暗号化は、データ破損により暗号化ボリュームに格納したデータが回復できなくなる危険が伴う。安定性が高いTrueCryptといえども完全ではない。ヘッダのバックアップとともに、大切なデータは必ずファイル自体のバックアップを取っておくことが望ましい。)
  • TrueCryptの具体的な使用法が分かっていることが前提。
  • 動作環境はWindows XP/2000/2003。 Vistaには非対応。利用できるTrueCryptのバージョンは決まっているため、TrueCryptのバージョンが更新されてすぐの時期は、対応するTCGINAが出るまで待つ必要がある。
  • TCGINAのインストールには管理者権限が必要。
  • 暗号化したユーザープロファイルはセーフモードで直接起動することができない。
 (セーフモードで起動するには、以下のようにする)

 セーフモードでの対処法:
   →セーフモード下でAdministratorでログオンし、
    暗号化したアカウントのユーザープロファイルを
    TrueCryptで適切なドライブにマウントしたあと、ログオフする。
   →暗号化したアカウントでログオンする

  • TCGINAをインストールするとデフォルトのGINA DLLが差し替えられるため、ログオンウィンドウのデザインが変わる。Ctrl+Alt+Shiftを押した時の挙動も変わる。参照:microsoft
  • ようこそ画面・ユーザーの簡易切り替えは使用できない。
  • 自動ログオンが一旦無効になる場合があるが、TweakUI等で再設定すれば直る。
  • ユーザープロファイルの暗号化後、一部のアプリケーションで起動時にトラブルが生じる可能性がある
 →これを回避するにはリパースポイントを使う。リパースポイントを使うには、システムドライブ(マウント元のフォルダがあるドライブ)のファイルシステムがNTFSでなければならない。
 (下記7.リパースポイントの設定参照)


※その他の注意点についてはTCGINA FAQ & トラブルシューティングを参照のこと。


秘匿ユーザーの作成方法


ここでは、新規の秘匿ユーザーを作ってみる。

作成前にTrueCryptがインストールされていることを確認する。
(TrueCryptのインストール先は任意の場所でかまわない。TCGINAはデバイスドライバ[windows\system32\drivers\truecrypt.sys]を直接操作しているらしい。)

大まかな流れは以下のようになる

1. TCGINAのインストール
2. 秘匿ユーザーを作る
3. 秘匿ユーザーで一度ログオンする。
4. 通常ユーザーで暗号化ボリュームを作成。
5. 暗号化ボリュームをマウント。
6. TCGINAのSetup.exeを実行して秘匿ユーザーのプロファイルを暗号化ボリュームにコピー。
7. リパースポイントの設定(必須ではない)

例として、新規秘匿ユーザーのアカウント名をsecret、既存の通常ユーザーをdefaultとする。

1.TCGINAのインストール


TCGINA DLLのサイトから最新版のzipをダウンロード。

展開したら中の tcgina-x.xx.7z (x.xxはバージョンにより異なる)を7zipWinRAR等で解凍する。

  • まず、lanmanフォルダ内のDisable_LAN_manager_hashes.cmdを実行する。(ログオンパスワードの脆弱性に対応するため→参考))




  • 次に、Installフォルダ内のSetup.exeを起動し、[Install TCGINA]からFULL versionを選んでインストール。
(LITE verは鍵ファイルやネットワーク上のボリューム等がサポートされない。DEBUG verはログファイルを生成する以外はFULL verと同じ。)





  • [OK]をクリックし、PCを再起動してTCGINAのインストール完了。
(インストール後ようこそ画面が表示されなくなるが、これは仕様である)



2. 秘匿ユーザーの作成


コントロールパネル→ユーザーアカウントで秘匿用のユーザーを作成し、パスワードを設定しておく。(名前は適当でよい。ここでは「secret」とする)
後述のコピーの際に支障が出るため「ファイルやフォルダを個人用にしますか」の画面では「いいえ」を選ぶ。





3. 秘匿ユーザーでログオン


現在のアカウントからログオフし、さきほど作成した秘匿用ユーザーアカウント(secret)でログオンする。
(これは必須。Windowsにsecret用のユーザープロファイルを作成させるため)


  ログオフ → 秘匿ユーザー(secret)でログオン


4. 通常ユーザーに戻って暗号化ボリュームを作成


secretに初めてログオンするとIE等の設定が自動的に行われる。
デスクトップが現れてPCが落ち着いたら、secretからログオフして通常ユーザーにログオンしなおす。
次に、TrueCryptでユーザープロファイルのコピー先となる暗号化ボリュームを作成しておく。



タイプファイル型だけでなくパーティション型のボリュームも利用できる。
マウント元のコンテナの位置マウント元のファイルコンテナ・パーティションの位置を後で移動するにはレジストリを書き換える必要があるので注意。コンテナの存在を隠したい場合は代替データストリームを利用する
サイズサイズは後から変更できないため、余裕を持って決める。最低でも10MBは必要。
パスワードログオン時のパスワード入力を一度で済ませたいなら、secretアカウントのパスワードと同じものを入力する。(ただしこれは推奨しない。セキュリティの観点からは別のパスワードを設定した方が良い)
フォーマットNTFS、FATどちらでもよい。ダイナミックコンテナも利用可能。

※TCGINAのsetup.exeは、Documents and Settings¥(ユーザー名)以下のファイルを全てコピーしようとする。
既存のユーザープロファイルを暗号化する場合は、
その既存ユーザープロファイルより大きいサイズのボリュームを作っておく必要がある。
大きなデータはユーザープロファイル以外の場所に移動させておき、後で別の暗号化ボリュームを作って運用するのも手だろう。




5. 暗号化ボリュームをマウント


通常ユーザーでtruecrypt.exeを起動し、4.で作成した暗号化ボリュームをマウントする。
(任意の場所でよい。図中ではU:¥にマウントしている。)




6. 秘匿ユーザーのプロファイルを暗号化ボリュームにコピー


TCGINAのSetup.exeを起動し、[Encrypt User Profile]のUser Nameから暗号化したいユーザーアカウント(この例ではsecret)を選ぶ。
[TrueCrypt Drive]で先ほどマウントしたドライブ(図中ではU:)を選ぶ。

※セーフモードで暗号化アカウントにログオンするためには、TrueCryptを起動できる非暗号化ユーザーアカウントが、最低一つ必要である。
したがって、「Administrator」アカウントは暗号化してはならない

[OK]を押すとコピーが始まる。



※ログオン中のユーザーはコンボボックスに表示されない。コピーできるのはログオンしていない'’別ユーザー''のプロファイルである。



※コピー中に、ロックされているファイルやアクセス権限がないファイルがあると、コピーに失敗してコピー前の状態に戻る。
たとえば「C:\Documents and Settings\【ユーザー名】\Local Settings\Temp\hsperfdata_ユーザー名」というフォルダがコピーできずに失敗することがある。
この場合、前もって【ユーザー名】のアカウントでログオンして、このフォルダを削除しておく必要がある。


コピーが完了すると「コピー元のプロファイルは消去されず残されています」という旨のメッセージとコピー元のパスが表示される。
コピー元のプロファイル(ここではC:¥Documents and Setrtings¥secret)内のファイル・フォルダはバックアップ後、Eraserなどで完全消去しておく。






7.リパースポイントの設定 (NTFSのみ。この作業は必須ではない。)


TCGINAは、ユーザープロファイルの場所を別ドライブに書き換える。
そのため、設定ファイル等を「C:\Documents and Settings\【秘匿ユーザー名】」以下の固定パスで管理しているアプリケーションの場合、設定ファイルを見つけられずアプリ起動時にトラブルが生じる場合がある。

そこで、リパースポイントを利用し、C:\Documents and Settings\【秘匿ユーザー名】のフォルダを暗号化ドライブにマウントすることで、こうしたトラブルを回避する。(このトラブルが生じないのであれば、この作業は不要である)
(ただしこの方法はシステムドライブがNTFSでないと利用できない。)
<方法>
  • TCGINAによるコピー(上記6.)の終了後、元のC:\Documents and Settings\【秘匿ユーザー名】フォルダの中身を削除する。(U:\ではないので注意)
  ↓
  • NTFS Utilsをダウンロード、インストールする。
  ↓
  • C:\Documents and Settings\【秘匿ユーザー名】フォルダを右クリックし、「リパースポイントの作成」をクリックする。
(C:\Documents and Settings\【秘匿ユーザー名】フォルダの中身が空でないと、メニューに現れない。)

  ↓
  • 「マウントするターゲットフォルダ」に、ユーザープロファイルの入った暗号化ドライブ直下のDocuments and Settings\【ユーザー名】フォルダを指定する。


  ↓
  • 「OK」を押す。

※注意
リパースポイントを設定した後、CドライブからDocuments and Settings\【秘匿ユーザ名】フォルダ以下をエクスプローラで開き、ファイルをごみ箱経由で削除すると、
暗号化ボリュームからCドライブのRECYCLERフォルダにファイルが移動される。
このファイルは暗号化が解かれた状態で移動される。
したがって、CドライブからDocuments and Settings\【秘匿ユーザ名】フォルダ以下を開いた場合に、ゴミ箱へ移動するのは控えた方が良い

<暗号化ドライブ:>\Documents and Settings\【秘匿ユーザ名】以下からゴミ箱経由で削除する場合は問題ない)


秘匿ユーザーへのログオン

一度プロファイルを暗号化ボリュームにコピーしてしまえば、以降のログオンは普通に行える。
ログオンパスワードを入力すると、TrueCryptパスワードを入力するダイアログが現れる。
ここで正しいパスワードを入力すると暗号化ボリュームがマウントされ、ユーザープロファイルが読み込まれる。
(ログオンパスワードとTrueCryptパスワードを同じものにしておけば、ログオンパスワードを入力するだけで自動的にTrueCryptボリュームもマウントされる)





暗号化したユーザープロファイルをデフォルトに戻す。

秘匿ユーザーのプロファイルをデフォルトの位置に戻すには、次の手順で行う。

1. 秘匿ユーザー以外のユーザーでログオンし、秘匿ユーザーのユーザープロファイルをマウントする。

2. TCGINAのSetup.exeで[Reset UserProfile]をクリック→コンボボックスから秘匿ユーザーを選びリセットする。
  これによりレジストリのユーザープロファイルパスがC:¥Documens and Settings¥(秘匿ユーザー名)にリセットされる。

3. 暗号化ボリュームの内容を手動でC:¥Documens and Settings¥(秘匿ユーザー名)以下にコピーする。

※戻したユーザープロファイルは、当然全て暗号化されていない状態になる。





TCGINAのアンインストール

Setup.exeにて、[Uninstall TCGINA]を選択し実行する。






補足

  • TCGINAの各ユーザ別の設定は
HKEY_LOCAL_MACHINE¥SOFTWARE¥TCGINA DLL¥{D47DF546-F16B-490b-A6D8-523603A5594D}
に記録されている。

  • GINAとはGraphical Identification aNd Authenticationの略である。

  • TCGINA作者による解説の訳 []は編集者による追記
TCGINA.DLLはwinlogon.exeと既存のGINA DLLの間にインストールされる。
Windowsの認証手続きに参加し、ログオンする前に自動的にTrueCryptボリュームをマウントする。
TCGINAは[ログオン時に入力された]ユーザー名とパスワードを傍受する。次にユーザープロファイルのレジストリハイブがアクセス可能か調べる。
レジストリハイブがアクセス可能で、ProfileImagePathの中に間違った.tcuserファイルが見つからなければ、TCGINAは通常のログオン処理に制御を戻す。
TCGINAがユーザーアカウントを記録したTrueCryptボリュームを見つけた場合、傍受したパスワードでマウントを試みる。
そのパスワードではマウントできなかった場合、パスワードダイアログボックスが表示されユーザーにTrueCryptボリュームを入力するよう促す。
TCGINAがTrueCryptボリュームを見つけられなかった場合、全てのパーティションについて同様にマウントを試行する。
ログオフした後、TCGINAはログオン前にマウントされていなかった全てのボリュームを強制的にディスマウントし、パスワードキャッシュを消去する。
2009年10月24日(土) 14:08:07 Modified by hiverd

添付ファイル一覧(全20件)
af26a64d76fd4f66.png (27.16KB)
Uploaded by hiverd 2007年01月20日(土) 21:20:26
c1a53f9bd8ab30db.png (27.20KB)
Uploaded by hiverd 2007年01月20日(土) 21:20:26
fef1f149337f2063.png (17.86KB)
Uploaded by hiverd 2006年12月03日(日) 13:37:53
dcee95128dab6dfd.png (35.06KB)
Uploaded by hiverd 2006年12月03日(日) 13:37:52
33d212b6eca14ae2.png (11.87KB)
Uploaded by hiverd 2006年12月03日(日) 13:37:52
e247413a5ee7c841.png (17.98KB)
Uploaded by hiverd 2006年12月03日(日) 13:37:52
75a746ae85fb4fea.png (36.59KB)
Uploaded by hiverd 2006年12月03日(日) 13:20:48
09e73c9978e39d03.png (16.95KB)
Uploaded by hiverd 2006年12月03日(日) 13:20:47
040ab991d1ed7a59.png (10.35KB)
Uploaded by hiverd 2006年12月03日(日) 13:20:47
a9f992c36f742835.png (11.50KB)
Uploaded by hiverd 2006年12月03日(日) 13:20:47
8c293fed7500b446.PNG (89.58KB)
Uploaded by hiverd 2006年12月03日(日) 13:20:47
071f9f5f20142b63.png (11.48KB)
Uploaded by hiverd 2006年12月03日(日) 13:18:14
f5b30fbcd86f9ecc.png (7.96KB)
Uploaded by hiverd 2006年12月03日(日) 13:18:13
f3e2df48d8dbb491.png (7.89KB)
Uploaded by hiverd 2006年12月03日(日) 13:18:13
4b53b61564786057.PNG (6.12KB)
Uploaded by hiverd 2006年12月03日(日) 13:18:13
15da29ee79ed04cf.PNG (6.56KB)
Uploaded by hiverd 2006年12月03日(日) 13:18:12
232e0765d9e2a9cf.png (11.36KB)
Uploaded by hiverd 2006年11月30日(木) 20:27:15
9f79862d053aedfa.png (19.26KB)
Uploaded by hiverd 2006年11月30日(木) 20:27:15
d234e3194c2f51f1.png (9.64KB)
Uploaded by hiverd 2006年11月30日(木) 20:27:15
5cbe6ce4da683ebc.png (22.75KB)
Uploaded by hiverd 2006年11月30日(木) 20:27:14



スマートフォン版で見る