TechRepublicのクイックリファレンス:PCトラブルシューティングパックで、PCの問題を素早く解決しましょう。4枚の耐久性のあるラミネート加工チャートセットで、PCハードウェア、ネットワーク、Windowsデスクトップ、セキュリティの問題のトラブルシューティングに役立つ実証済みのソリューションをすぐに入手できます。
最近気づいたのですが、ハッキングはIT業界全体の中で最も誤解されている概念の一つです。友人や家族にハッキングの経験があると話すと、必ず「捕まって刑務所行きだ」と言われます。多くの人が理解していないのは、合法的なハッキングの種類があるだけでなく、日常的なIT運用においてハッキングが不可欠な場合もあるということです。
例えば、パスワードの回復について考えてみましょう。IT担当者が退職し、新しい担当者が管理者パスワードを全く知らなかったため、ネットワークをハッキングするために私に金銭を支払ったことが何度かありました。ここでは、パスワードを忘れてしまった場合の変更または回復に使えるテクニックをいくつかご紹介します。その多くは、ハッカーツールや管理ユーティリティを使用するものです。
システムアカウントを有効活用する
Windows NT 4.0 をお使いの場合、ツールを一切使わずに、管理者パスワードを含むあらゆるパスワードを変更できます。この手法は、システムアカウントを悪用します。システムアカウントは組み込みアカウントであり、通常は特定のサービスの実行にのみ使用されます。ご想像のとおり、システムアカウントには無制限の権限が与えられています。このアカウントをいかに有効活用するかが鍵となります。
Windows NT 4.0 にログオンするたびに、スプーラサービスが実行されます。スプーラサービスは多くの権限を必要とするため、ログインしているユーザーの権限ではなく、システムアカウントで実行されます。そのため、システムを騙してスプーラサービスではなくユーザーマネージャを実行させることができれば、ユーザーマネージャはシステムアカウントのすべての権限で実行されることになります。これにより、システム上の任意のユーザーアカウントを自由に制御できるようになります。
システムを騙して別のファイルを実行させるのは難しいように思えるかもしれませんが、実際にはそうではありません。既知のユーザー名とパスワードを使ってマシンにログオンするだけです。この時点ではアカウントの権限は関係ありません。ログオンしたら、Spoolss.exeファイルの名前をSpoolss.bakに変更します。次に、Usrmgr.exeの名前をSpoolss.exeに変更します。システムを再起動すると、ユーザーマネージャーからユーザーアカウントに無制限にアクセスできるようになります。完了したら、ファイル名を元の名前に戻してシステムを再起動することを忘れないでください。
ERD Commander
私のお気に入りのパスワードユーティリティは、Winternals SoftwareのERD Commanderです。ERD Commanderの根底にあるのは、フロッピーディスクやCDを使ってマシンを起動できるという点です。Windowsではなく、ERD Commander独自のオペレーティングシステムを起動します。これにより、システムのパーティションにアクセスできますが、Windowsのセキュリティは適用されません。そのため、制限なく自由に操作できます。ERD Commanderを使えば、システムにログオンしなくても、管理者パスワードやその他のパスワードをリセットできます。必要なのは、マシンに物理的にアクセスすることだけです。
ERD Commanderの気に入っている点の一つは、オリジナルのWindowsコードに基づいていることです。つまり、ハードディスクがRAIDアレイの一部であっても、ほとんどの場合、ユーティリティはそれらを認識します。ほぼあらゆるハードウェア構成のマシンで、管理者パスワードにアクセスしてリセットできます。
ERD CommanderはWinternalsから399ドルで購入できます。さらに便利なユーティリティが付属するAdministrators Pack(699ドル)にも含まれています。
パスワード回復 XP
これまでこの記事では、Windows のログオンパスワードの解読に焦点を当ててきました。しかし、多くのアプリケーションは独自のパスワードを保持しています。そのようなアプリケーションに管理者権限でアクセスする必要がある場合は、アプリケーションレベルのパスワードを知っておく必要があります。問題は、この種のパスワードは使用頻度が低いため、忘れられやすいことです。Web 上には、あらゆる種類のアプリケーションのパスワードを解読するための専用クラッカーが数多く存在します。しかし最近、ある汎用的なクラッキングユーティリティに注目しました。
iOpusのPassword Recovery XPは、アスタリスクで隠されたほぼすべてのパスワードを復元できます。多くのユーティリティがこの種のパスワードを解読できますが、Microsoftは最近パスワードのエンコード方式を変更しました。その結果、隠されたパスワードを解読するために設計されたパスワードクラッカーの大部分は、Windows XP以前の環境でのみ動作します。Password Recovery XPは、すべてのバージョンのWindowsで動作するように特別に設計されています。
Password Recovery XP は最小限のシステム要件で動作します。ハードウェアレベルでは、486 以上のプロセッサと 1MB のハードディスク空き容量が必要です。このユーティリティはオペレーティングシステムに関しても同様に柔軟で、Windows 95、98、Me、NT、2000、XP をサポートしています。
iOpusのウェブサイトにアクセスして、ソフトウェアの無料トライアル版をダウンロードするか、フルバージョンをご購入いただけます。無料トライアル版では、復元を試みるパスワードの最初の3文字しか表示されません。慣れていないシステムに保存されているパスワードを推測するには必ずしも十分ではないかもしれませんが、少なくともフルバージョンを購入する前に、このソフトウェアが自分のシステムで動作するかどうかを確認できます。
フルバージョンの価格は29.95ドルで、CD-ROM版をご希望の場合は送料と手数料として7.99ドルが加算されます。ただし、ご購入前に、ライセンスはユーザーではなくマシン単位で付与されることをご了承ください。サポート技術者は、ソフトウェアを使用するマシンごとに個別のコピーを購入する必要があります。
ソフトウェアの使い方は非常に簡単です。ダウンロードは自己解凍型の実行ファイル形式で行われ、インストールプロセスはほぼ完全に自動化されています。ソフトウェアをマシンにインストールしたら、「スタート」→「すべてのプログラム」→「iOpus Password Recovery XP」メニューから「iOpus Password Recovery XP」コマンドを選択して実行できます。
プログラムが起動すると、図Aに示すようなインターフェースが表示されます。鍵アイコンをクリックし、復号したいパスワードが入力されているフィールドまでドラッグするだけです。復号されたパスワードはPassword Recovery XPウィンドウに表示されます。復号処理は非常に高速です。私自身の実験では、一部のWebベースのパスワードの復号に少し苦労しましたが、他のパスワードはすべて迅速かつ簡単に復号できました。
図A |
![]() |
これは iOpus Password Recovery XP インターフェースです。 |
ハッカーツール
について:これまで、オペレーティングシステムから直接、あるいは正規の商用アプリケーションを使って、紛失したパスワードを回復するためのテクニックを紹介してきました。しかし、ハッカーツールが目的の達成に役立つのであれば、その使用を否定すべきではありません。
インターネットでハッカーツールを探し回る前に、一つ注意点があります。一般的に、ハッカーのウェブサイトは信用できません。ハッカーツールをダウンロードする際は、どんなものを入手するか分からないため、細心の注意を払う必要があります。
レッドボタン
コンピュータで作業をしようとしていて、管理者パスワードを誰も知らない場合、コンピュータの所有者が管理者アカウントの名前すら知らない可能性があります。管理者アカウントの名前を変更することは、長年セキュリティ対策としてよく使われてきました。しかし、システムがWindows NTであれば、「レッドボタン」と呼ばれるハッカーツールを使うことで、管理者アカウントの名前が変更されているかどうか、また変更されている場合は新しい名前を確認することができます。図Bにレッドボタンの例を示します。
図B |
![]() |
Red Button は、管理者アカウントの名前が変更されたかどうかを判断できます。 |
図では、ビルトインのAdministratorアカウントがN/Aと表示されていることにお気づきかもしれません。これは、この記事を執筆していた当時、Windows NTサーバーが手元になく、Red ButtonをWindows 2000サーバーで実行したためです。Microsoftは、Windows 2000をAdministratorアカウント名が不正に利用されないよう設計しました。
辞書と総当たり攻撃によるパスワード解読:
これらのテクニックをどれも使っても難解な管理者パスワードを解読できなかった場合は、最終手段として総当たり攻撃によるパスワード解読を検討してみてはいかがでしょうか。この方法には長所と短所があります。良い点は、適切に実行された総当たり攻撃によるパスワード解読はほぼ確実に成功することです。これは、パスワードハッシュに一致する数字、文字、記号のあらゆる組み合わせを単純に試すというものです。
欠点としては、ブルートフォース攻撃による解読には長い時間がかかることが挙げられます。パスワードの文字数が1文字増えるごとに、解読時間は指数関数的に増加します。例えば、0~9の数字しか含まれないパスワードをブルートフォース攻撃で解読するとします。1文字のパスワードでは10通りの組み合わせ、2文字のパスワードでは100通りの組み合わせ、3文字のパスワードでは1,000通りの組み合わせが考えられます。
この例では、計算を簡単にするために数字のパスワードを使用しました。しかし、PCの世界では、パスワードの各桁には256通りの値が考えられます。中には無効な値もありますが、それでも1文字のパスワードには256通り、2文字のパスワードには65,536通り、3文字のパスワードには1,670万通りの組み合わせが考えられます。
これらの驚くべき数字を見て、総当たり攻撃によるパスワード解読には永遠に時間がかかると思うなら、その通りです。しかし奇妙なのは、優れた総当たり攻撃クラッカーなら4桁のパスワードをわずか数分で解読できるということです。1日かけて解読すれば、7桁のパスワードまで解読できるかもしれません(使用しているソフトウェアとマシンの速度によって異なります)。しかし、7桁を超えるパスワードになると、解読にかかる時間は大幅に長くなります。7桁のパスワードなら1日で解読できる可能性はありますが、8文字のパスワードを解読するには(24時間365日稼働していても)1週間以上かかるケースもありました。
運が良ければ、ブルートフォース以外の有効なパスワード解読手法が見つかるかもしれません。特に、マシンの以前の管理者が長いパスワードを多用していた場合はなおさらです。どうしてもブルートフォースクラッカーを使う必要がある場合は、私がおすすめするツールはLOphtCrackです。
LOphtCrackの現在のバージョンでは、パスワードをクラックする前に管理者権限が必要です。ただし、LOphtCrackのWebサイトには、レジストリからパスワードハッシュを抽出できるユーティリティがいくつか掲載されています。これらのユーティリティを使えば、LOphtCrackを使ってハッシュ化されたパスワードをクラックできます。現在のバージョンがこの種のクラックに対応しているかどうかは不明ですが、Web上に出回っている古いバージョンの中には対応しているものもあります。
LOphtCrackが私のお気に入りのツールの一つである理由は、まず辞書ベースのクラックを実行することでクラッキングプロセスを最適化するからです。その名の通り、辞書ベースのクラックは辞書に載っている単語をテストし、マシンのパスワードと一致するかどうかを確認します。ほとんどの辞書ベースのクラックは、一般的な用語、よくあるスペルミス、そして専門用語を検索します。例えば、パスワードが「PASSWORD」であれば、辞書ベースのクラックで問題なく解読できます。しかし、パスワードが「WhAtz~Da*PasssWoyd」であれば、辞書ベースのクラックは機能せず、総当たり攻撃に頼るしかありません。
パスワードを解読すること
はネットワークのセキュリティ強化につながりますが、同時に頭痛の種にもなります。パスワードを紛失した場合、それを取り戻す方法が必要です。ここで紹介するツールを使えば、紛失したパスワードを回復し、より緊急性の高い他の作業に戻ることができるかもしれません。