作成時間を抽出して解析するためのPOC PowerShellスクリプトを提供しようとしていましたが、chntpw
ロジックが正しくないことに気付きました。作成時間と呼ばれる値は、実際には最後に設定されたパスワードですが、これらの値は最初のアカウント作成時と同じです。SAMの完全な説明については、ここを参照してください。
samparse
しかし、エヴァンの2番目のリンクは、それを正しく理解するかもしれません。実際に見てみると効果があります。ここでソースを見ると、99行目:
$c_date = $create->get_timestamp();
get_timestamp
Perlからの呼び出しが表示されますParse::Win32Registry
。それが実際にキーの最後の書き込み時間であると確信しています。特定のキー(HKLM\SAM\SAM\Domains\Account\Users\Names\<USERNAME>
)は対応するRIDキーへのポインターのみを保持しているように見えるため、作成後に変更してはならず、最終書き込み時間は作成時間と同じになります。
さらに組み込みのツールを使い続けたいので、PowerShellを介してその方法を説明する一連のScripting Guyの記事を次に示します。
PowerShellを使用してレジストリの最終変更タイムスタンプにアクセスする
PowerShellレジストリのタイムスタンプコードの再利用
レジストリキーのタイムスタンプを表示するプロキシ関数を作成する
PowerShellを介してレジストリキーのタイムスタンプを活用する