アロワナ飼いたい

いつかアロワナを飼いたい人のブログです

Mimikatzを用いて資格情報をダンプする

Mimikatzの使用例に関するメモ。
Windowsマシンにおけるローカルアカウントの資格情報のダンプを行います。
※ 許可されていない環境では実施しないこと


■ 検証

検証は次の流れで行います。せっかくなので、資格情報のクラックも試します。

  1. 検証用アカウントの追加
  2. 検証用フォルダの作成と設定
  3. 事前確認
  4. 検証用アカウントでのサインインとサインアウト
  5. 資格情報のダンプ
  6. NTLMハッシュのクラック
  7. 事後作業

各手順の詳細を記載します。


1. 検証用アカウントの追加

次のような検証用アカウント(ローカルアカウント)を追加します (Windowsアカウントの新規作成については参考1が分かりやすいです)。資格情報をクラックしてみたいので、パスワードはrockyou.txtに記載されているような単純なものとします。

・ID:testuser
・PW:arowana

資格情報が記録されていない状態を確認しておきたいので、ここではひとまず当該アカウントによるサインインはスキップします(手順4でサインインします)。


2. 検証用フォルダの作成と設定

検証に使う作業フォルダを作成します。今回は次のようなフォルダとしました。

・C:\work

さらに、このフォルダをMicrosoft Defenderのウイルス対策スキャンの対象外に設定します(設定方法については参考2が分かりやすいです)。


作業フォルダをスキャンの対象外にする理由としては、Mimikatz.exeがMicrosoft Defenderによって削除される可能性があるからです。除外設定ができれば、作業フォルダの中に必要なユーティリティを格納します(Mimikatzに加え、john the ripperとrockyou.txtを格納しました)。


3. 事前確認

手順1.で追加した新規アカウントの資格情報が得られないことを確認します。 管理者権限で開いたコマンドプロンプトから、Mimikatz.exeを起動します。

> cd C:\work
> .\Mimikatz.exe


プロンプトが変わるので、続けて次のコマンドを実行します。

# privilege::debug
# sekurlsa::msv


「privilege::debug」コマンドにてデバッグ権限を取得し、「Privilege '20' OK」と表示されることを確認します。その後「sekurlsa::msv」を実行することで資格情報をダンプできます。当該端末にサインインしたことがあるアカウントの資格情報は確認できますが、手順1.で追加した新規アカウントの資格情報はまだ確認できません。


4. 検証用アカウントでのサインインとサインアウト

資格情報を記録するため、手順1.で追加した新規アカウントでサインインします。その後はそのままサインアウトして、検証を行うアカウントに切り替えます。


5. 資格情報のダンプ

手順1.で追加した新規アカウントの資格情報をダンプします。管理者権限で開いたコマンドプロンプトからMimikatz.exeを起動し、「privilege::debug」、「sekurlsa::msv」と入力します

> cd C:\work
> .\Mimikatz.exe
# privilege::debug
# sekurlsa::msv


手順3.の結果と異なり、手順1.で追加した新規アカウントの資格情報が新たに出力されることが確認できます。


6. NTLMハッシュのクラック

手順5.で得られた新規アカウントのNTLMハッシュをクラックしてみます。「C:\work」に「hash.txt」というファイルを作成し、NTLMハッシュの値を記入します。

85ba5d216dbe544fedbc963dbb96b1c8


次のコマンドにて、NTLMハッシュをクラックできます。

C:\work\john\run\john.exe --format=NT --wordlist=C:\work\rockyou.txt C:\work\hash.txt


クラックは一瞬で終わり、「arowana」と表示されていることが確認できます。なお、再度当該ハッシュをクラックする際は、「No password hashes left to crack」と表示されます。このときは、john.exeと同フォルダ内に作成された.potファイルを削除して上述のコマンドを実行します。
※ 「--show」オプションを付けて実行することで、再度クラックせずに解析結果を確認することもできる

C:\work\john\run\john.exe --format=NT --show C:\work\hash.txt


7. 事後作業

検証が終われば、必要に応じて端末を検証前の状態に戻します。具体的には次のとおりです。

  • 検証用アカウントの削除
  • 検証用アカウントのプロファイルの削除
  • 検証に利用したユーティリティや入出力ファイルの削除
  • 検証用フォルダの削除
  • Microsoft Defenderのウイルス対策スキャンの対象外の設定


■ 感想

ドメイン環境で検証すると、もっと面白そうです。


■ 参考