-
-
[原创]『AD域攻防实践』第二期学习笔记
-
发表于: 2021-9-10 14:57 4307
-
上一周的直播课中,小伙伴们跟随御守实验室的师傅一起了解了“AD域在攻防对抗场景下的安全现状”,课程结束后,我们为大家整理了学习笔记,也将录屏和PPT公布在了公众号和微信群,帮助大家查漏补缺。
在小伙伴们的热情支持下,『AD域攻防实践』系列第二期也成功于9月6号晚20:00在bilibili圆满结束。
本期主要内容为“AD域安全风险“,由GPP老师讲解,为了方便大家对域内风险有更全面深入的理解,GPP老师按照攻击阶段,将域内风险分为信息收集、横向移动、权限提升和权限维持四个部分,深入浅出地为我们讲解了威胁原理和防护措施,相信大家都学有所得。
有些小伙伴听课太入迷,忘记做笔记,但小编没忘。不藏私的小编依然把自己的学习笔记分享给大家,也欢迎各位踊跃“秀”出自己的笔记。
# 域内信息收集与防御 #
域内信息收集主要通过LDAP和SAMR两种方式:
1)LDAP信息收集原理:因为域环境下所有的组、账户等对象都存储在Directory-Database中,而LDAP可以用来查询和更新目录数据库,所以通过LDAP协议可以快速收集很多域内重要信息,比如域管组、域控、MAQ、组策略等。
2)SAMR信息收集原理:通过身份验证的用户,可以远程访问SAM;NET命令就是通过SAMR协议查询。
信息收集检测与防御:从流量中可以检测到信息收集的特征。
# 域内横向移动及对抗 #
1)PTH横向移动:
威胁:攻击者可能会在获得Hash后在RDP的受限管理模式中PTH进行横向移动,此模式RDP不会使凭据暴露在目标系统中。
原理:受限管理模式下无需输入凭据,就可以进行RDP。
2)重置用户密码进行横向移动
威胁:已知hash或明文密码的条件下重置该用户密码。
原理:在登录一些系统比如云桌面等不支持PTH的,就需要明文密码,那么就可以利用已经得到的hash来重置密码,在默认的配置下,everyone都可以通过SAMR协议利用RPC的方式在已知用户hash或明文的情况下重置任意用户的hash或明文密码,那攻击者为了无感知操作,可以用SetNTLM重置密码,登陆了目标系统后,然后再用ChangeNTLM去修改回去。
3)利用WinRM进行横移
原理 :WinRM是Windows远程管理服务,Windows server2012后开启,默认监听端口5985(HTTP)和5986(HTTPS)。相比于psexec或者wmiexec,利用WInRM也能达到相同的效果,攻击者控下一台主机就能利用这种方式执行命令。
4)无需445端口横向移动:
威胁:这种方法可以将命令执行的结果输出到注册表,然后通过wmic读注册表,实现了不借助445进行回显。
原理:调用了Win32_ScheduledJob而不是Win32_Process。
防护:所以可对注册表进行限制来实现对此横向移动方法的防御。
5)横向移动防御对抗方法:
通过系统配置来防御:
- 开启remoteUAC(KB2871997)
- 禁用本地administrator用户用户
- 本地用户不允许通过网络登录
- 通过防火墙限制登录时入站流量只能来自于特定的主机。
通过专业检测来防御:
- 在流量中可检测密码喷洒或爆破;
- 在日志当中可检测到攻击者进行PTH等横向移动攻击的痕迹;
# 域内权限提升与防御 #
1)防御域管凭据泄漏:
- 检查域管正在登陆的主机,利用 NetSessionEnum 来找寻登陆sessions。
- 利用NetWkstaUserEnum 来枚举登陆的用户,列出当前登录到该工作站的所有用户的信息。
- 利用枚举注册表来查看。
2)防御离线爆破获取特权账号的凭据:
威胁1(AS-REPRoasting):域内设置了“Do not require Kerberos preauthentication”的域用户——获取加密后的密文——利用hashcat 爆破;
防御1:建议域内所有用户都禁止设置为“不需要kerberos预认证”。
威胁2(Kerberoasting):扫描域内拥有SPN的用户账户——获取加密后的密文——利用hashcat爆破。
技巧:系统默认使用SPN来作为SNAME,我们可以使用用户名作为SNAME来代替SPN绕过一些防护软件。
3)防御通过NTLM中继进行权限提升:
威胁1(普通中继):
威胁2(跨协议中继):
防护2(防御中继攻击):
- EPA增强型身份保护
- SMB签名
4)ACL权限风险:常被用来寻找攻击路径和充当后门的权限,需要重点关注。
WriteProperty的某些属性:
- member(bf9679c0-0de6-11d0-a285-00aa003049e2)
- servicePrincipalName(28630EBB-41D5-11D1-A9C1-0000F80367C1)
- GPC-File-Sys-Path(f30e3bc1-9ff0-11d1-b603-0000f80367c1)
扩展权限:
- User-Force-Change-Password(0299570-246d-11d0-a768-00aa006e0529)
可以在不知道当前目标用户的密码的情况下更改目标用户的密码
- DS-Replication-Get-Changes(1131f6aa-9c07-11d1-f79f-00c04fc2dcd2)和DS-Replication-Get-Changes-All(1131f6ad-9c07-11d1-f79f-00c04fc2dcd2)
具有这两个扩展权限的用户具备dcsync 权限
通用权限:
- WriteDacl
- AllExtendedRights
- WriteOwner
- GenericWrite
- GenericAll
- Full Control
5)防御SIDHistory+Golden票据跨域
威胁:可以将SID History 添加到林的 Enterprise Admins组的Golden Ticket中,来做跨域的金票,实现跨域的权限提升。
原理:因为SID History对于启用SID筛选的域无效,所以可以启用域林的SID筛选。
6)防御PetitPotam + NetNTLMV1 进行权限提升
威胁:控制Challenge为1122334455667788,攻击者将Net-Ntlm降级为V1后,获取到的Net-NTLMv1 Hash都能破解为NTLM hash。
防护:<建议禁用此选项>
7)防御PetitPotam +ADCS 进行权限提升
威胁:由于ADCS配置不当允许NTLM认证,结合petitpotom 可以获取域控TGT,然后进行DCSync获得域内所有用户hash。
防护:禁止NTLM认证,采取Kerberos认证。
8)防御PetitPotam + 非约束委派进行跨域
威胁:对于非约束委派的机器,如果能让这台机器主动访问攻击者的机器,就可以在内存中抓取TGT,实现权限提升。
防护:由于所有的域控默认是非约束委派,建议不要设置域控的非约束委派。
9)权限提升防御总结
- 登陆域控或其他服务器强制只用堡垒机系统。
- 域管账号只允许登陆域控,尽量避免以域管身份在其他终端机器上执行操作。
- 严格限制ACL的配置。
- 域内禁止配置非约束的委派。
- 个人终端每24小时重启一次,防御特权账户凭据泄漏。
- 将MAQ设为0。
- 域内禁止用户配置不要求预认证。
- 不允许多个AD管理员共用同一域管账号。
- 关闭域控打印机服务。
- 配置SMB签名,防御SMB-relay。
- 域内开启SID筛选,防御SIDhistory利用攻击。
- 域内通过网络ACL禁止445、135端口的通讯。
# 域内权限维持及对抗 #
1)防御万能密码后门:
威胁:在攻击者拿到域控后,为了做权限维持,可能会使用万能密码。
防护:可以通过用mimikatz这个密码来进行登陆检测是否有万能密码后门。若有万能密码需要重启域控。
2)DCSync:
威胁:攻击者拥有ReplicatingDirectory Changes All 和Replicating DirectoryChanges这两条风险权限就可DCSync(实现原理:攻击者通常会创建一个有这两条权限的普通用户,而此用户可以Dump下域内所有Hash)
防护:检查具有上述ACL的用户。
3)AdminSDHolder:
威胁:修改AdminSDHolder容器的攻击者可以建立隐蔽的高权限账户并且重新获得对Active Directory 的管理访问权限。
原理:每小时(默认情况下),SDProp进程将Active Directory中受保护对象(例如域管理员组)的权限与在称为AdminSDHolder的特殊容器上定义的权限进行比较。如果它们不同,它会将受保护对象的权限替换为AdminSDHolder 上定义的权限。
4)DCShadow:
威胁:DCShadow是攻击者来伪造一台DC,然后让正常DC来伪造DC复制同步数据,达到把恶意数据同步到所有DC的目的。
5)非约束委派权限授予:
威胁:域内非约束委派的权限授予可被用来做权限维持。
原理:找到配置了非约束委派的机器账户,通过printerbug或者其他手段使域控访问非约束委派账户,就可以拿到域控TGT,然后被攻击者用来DCSync。
6)防御组策略权限维持:
威胁:
- 攻击者可以通过组策略给某个用户赋予特权,比如SeEnableDelegationPrivilege
- 降级凭据保护。
- 赋予某个用户拥有对某条GPO修改的权限。
防护:安全产品实时监控组策略操作。
# 结语 #
第二期直播课程就此告一段落,之后我们会将录屏和PPT公布给大家,获取渠道可以关注公众号,也可以加入技术群(关注公众号“中安网星“,回复”AD域“)。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)