近期,微软爆出高危 SMB TreeConnect 响应拒绝服务漏洞,编号为CNNVD-201702-204(CVE-2017-0016)。攻击者利用该漏洞通过诱使有漏洞的 SMB 客户端连接到一台恶意构造的 SMB 服务器,导致客户端操作系统系统蓝屏崩溃。
Microsoft 服务器消息块 (SMB) 协议是 Microsoft Windows 中使用的一项 Microsoft 网络文件共享协议。在大部分 windows 系统中都是默认开启的,用于在计算机间共享文件、打印机等。
漏洞分析:
在演示环境中,首先搭建一个恶意的 SMB 服务器(图左),诱使客户端(图右)发起请求:
客户端发起请求,导致系统蓝屏崩溃:
根据漏洞复现,导致系统崩溃的情况,找到错误日志:
进一步追踪,查看崩溃时内存转储信息:
经分析调试发现,此时上图中参数 rcx 为 0,是空指针,当 SMBv3 Tree Connect 应答字符超过一定数量的时候,导致此空指针引用异常,引发系统蓝屏崩溃。
友情提示:
1、此漏洞存在于 SMB 客户端(mrxsmb20.sys),已公开的 POC 可以导致系统崩溃,并且微软尚未发布补丁。攻击者可以通过 445 等远程端口,或中间人攻击,或网页诱骗用户点击触发漏洞。千里目安全实验室建议企业客户可以将本地网络至广域网的外传 SMB 连接屏蔽掉(TCP 139/445 端口、以及 UDP 137/138 端口)。
参考链接:
https://github.com/lgandx/PoC/tree/master/SMBv3%20Tree%20Connect