Microsoft Windows SMB客户端池破坏远程代码执行漏洞(MS10-006)
漏洞描述
此次扫描检测到目标主机尚未安装MS10-006/KB978251漏洞相应的HotFix,也未安装可以修正该漏洞的Service Pack.
Microsoft Windows是微软发布的非常流行的操作系统。
SMB客户端实现没有正确的验证SMB响应中的字段,远程攻击者可以通过向初始SMB请求的客户端回复特制的SMB响应来利用这个漏洞,导致完全控制受影响的系统。
在初始化SMB通讯时客户端会发送Negotiate Protocol报文来协商对话,服务器的响应包含有以下结构:
uchar WordCount; /* must be 0x11 (17) */
ushort DialectIndex; /* selected dialect */
uchar SecurityMode; /* security flags */
ushort MaxMpxCount; /* maximum pending multiplexed requests supported */
ushort MaxNumberVCs; /* maximum virtual connections */
ulong MaxBufferSize; /* maximum SMB message size */
ulong MaxRawSize; /* maximum raw buffer size */
ulong SessionKey; /* unique session identifier */
ulong Capabilities; /* server capabilities */
ulong SystemTimeLow; /* server time - low bytes */
ulong SystemTimeHigh; /* server time - high bytes */
short ServerTimeZone; /* time zone */
uchar EncryptionKeyLength; /* set to 0 or 8 */
如果服务端返回了包含有很小MaxBufferSize值的响应报文,就可以触发内核池破坏。
解决方法
临时解决方法:
* 在防火墙阻断TCP 139和445端口。
厂商补丁:
Microsoft
---------
Microsoft已经为此发布了一个安全公告(MS10-006)以及相应补丁:
MS10-006:Vulnerabilities in SMB Client Could Allow Remote Code Execution (978251)
链接:https://docs.microsoft.com/en-us/security-updates/securitybulletins/2010/ms10-006

浙公网安备 33010602011771号