CVE-2020-0796,又是一场补丁攻坚战

每年真正比较有影响力的漏洞编号,其实并不多,而这个CVE-2020-0796,就是我们在疫情之下全面返岗伊始,最值得去重视的一个。

2020年3月12日晚,微软正式发布CVE-2020-0796高危漏洞补丁。 这就意味着,一场与时间赛跑的攻防对抗开始了,要赶在攻击开始之前,保护系统并为其打上补丁。

通过这个漏洞,攻击者无需任何权限,即可利用漏洞直接攻击SMB服务端造成RCE,而且可以通过OFFICE文档、网页、压缩包等多种形式传递给目标用户,从而触发漏洞进行攻击。

这次漏洞的亮点在于针对SMB客户端的攻击,而且主要影响Win10系统的个人用户。试想一下,如果将这个漏洞大规模地应用于钓鱼攻击,一旦受害者点开了钓鱼邮件中的url或附件,很容易就中招了。

打补丁是预防病毒感染最有效的一种方式,但往往越是简单的事情,越难以做到。 数以上万的终端,如何才能让用户意识到打补丁的重要性,及时下载补丁修复此漏洞,这无疑将是一场攻坚战。

本文收集和整理了一些方法和工具,用于开展补丁安装攻坚。

1、如何检查操作系统版本?

作为个人用户,检查系统版本,可初步确认是否受到影响, 受影响版本: 1 9 03和1 9 0 9 )。

运行---输入winver,单击确定。 下图 所示, 我的 系统版 本是: Windows 10 Version 19 03。

2、漏洞修复工具

A、腾讯电脑管家SMB漏洞修复工具,下载地址:

http://dlied6.qq.com/invc/QQPatch/QuickFix_SMB0796.exe

B、安天  SMBv3的RCE漏洞强化工具,下载地址:

https://bbs.antiy.cn/forum.php?mod=viewthread&tid=83848

3、漏洞扫描工具

从MS17-010开始,再到CVE-2019-0708,都有一些安全厂商发布针对单一漏洞的远程漏洞扫描工具。这本是一件幸事,可以帮助更多的企业快速探测自身网络资产漏洞情况。

而到了现如今的CVE-2020-0796,漏洞扫描工具的获取越来越难了 比如,如果想要获取某安全厂商的SMB远程代码执行漏洞扫描工具,需填写申请书, 签字并加盖单位公章,仅限自用。另外, 某CERT 公众号发布了CVE-2020-0796快速扫描检测工具,随后删除了推文和工具下载地址,手慢的同学,你们已经错过啦。

在github,已经有了 CVE-2020-0796 的扫描脚本,可以借鉴一下,改成批量检测工具。 项目地址: https://github.com/ollypwn/SMBGhost

import socketimport structimport sysfrom netaddr import IPNetwork
pkt = b'\x00\x00\x00\xc0\xfeSMB@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x08\x00\x01\x00\x00\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00x\x00\x00\x00\x02\x00\x00\x00\x02\x02\x10\x02"\x02$\x02\x00\x03\x02\x03\x10\x03\x11\x03\x00\x00\x00\x00\x01\x00&\x00\x00\x00\x00\x00\x01\x00 \x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\n\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00'
subnet = sys.argv[1]
for ip in IPNetwork(subnet):
sock = socket.socket(socket.AF_INET) sock.settimeout(3)
try: sock.connect(( str(ip), 445 )) except: sock.close() continue
sock.send(pkt)
nb, = struct.unpack(">I", sock.recv(4)) res = sock.recv(nb)
if res[68:70] != b"\x11\x03" or res[70:72] != b"\x02\x00": print(f"{ip} Not vulnerable.") else: print(f"{ip} Vulnerable")

4、缓解措施

A、建议您立即安装漏洞补丁更新,微软安全补丁下载,访问如下链接:

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0796

B、如无法立即安装补丁,建议禁用SMBv3压缩

Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" DisableCompression -Type DWORD -Value 1 -Force

PS:无需重启,可以防止远程命令执行,但无法防止针对SMB客户端的攻击。

本文作者:Bypass007

我来评几句
登录后评论

已发表评论数()

相关站点

+订阅
热门文章