WannaCry 应急总结

首先说状况:

WannaCry 的感染者包括 Windows XP, Windows 7 以及微量的 Windows 10.

感染集中爆发于 5 月 12 日,推测是攻击者手工控制的爆发日期。

是的,我们确实收到的 Windows 10 的报告,这也是我们就传播方式争论不休的原因之一。

根据以往的经验,此类病毒(如 Locky 等)一般通过邮件传播,将远程代码执行漏洞(RCE)用于传播勒索病毒是没有见过的,MS17-010 是更没有想到的,主要有以下几个原因:

  1. RCE 漏洞是一把利器,用来干什么不行,何必用来勒索。
  2. 在现在的 PC 设备通常处于家用路由器的内网之中,攻击者的扫描工具无法扫描。
  3. 在默认的 Windows 7 防火墙设置中,445 端口的入站是禁止的。

因此,在最初的讨论中,我们甚至都不愿意讨论这是一个 MS17-010 漏洞产生的问题,因为这个东西出来的时间足够长,而且用来做这个足够浪费。

在排除有严重 0Day 漏洞的情况下(如果真的是 0Day 那没有人会用来勒索),排查近期微软系漏洞,我们认为存在攻击者可能通过以下方式传播:

  1. 通过恶意程序捆绑等方法传播
  2. 常见的恶意邮件传播
  3. CVE-2017-0199
  4. Office 宏
  5. MS17-010
  6. CVE-2017-0290

但是随着新增案例的增多,我们发现了其显著特点(教育网内、Win7 or XP,近期无邮件下载记录、WPS 用户同样中招等),如此显著的特点让我们怀疑自己对于 Windows 默认配置的理解存在问题,促使我们不得不重新评估我们的分析。

 

我们重新配置了一个 Windows 7,试图完全使用默认配置来分析这个路径。

我们重新检查了 Windows 7 默认的防火墙策略,确定了 445 端口默认策略是禁止入站的。

百思不得其解,正在试图否定 MS17-010 的分析的时候,发现了下图:

 

没错,Windows 7 特色的网络位置选择,经过我们的确认,

虽然默认禁止,但是在家庭/工作网络上,445 端口是开放的……

也就是说,如果是一台未安装 010 补丁的 Windows 7 机器,

在使用公网 IP 的时候,没有选择『公用网络』,

那么就是可以被扫描利用的状态。

一旦出现了这个『0 号感染机』,它回到宿舍等的内网环境下,

周围的机器一旦选择了『家庭或工作网络』,就会被蠕虫感染。

而一般人在宿舍等地方,都会设置成『家庭或工作网络』 = =

与 Windows 7 不同,Windows 10 就是公用网络的配置,445 关闭。

这样也就解释了 Windows 7 数量众多而没有 Windows 10 报告的情况。

但是剧情还没有完,

在第二天,也就是五月十三日,我们收到了校内第一个 Windows 10 感染者报告。

我们榆中的同学在天山堂主教学楼提取到了第一个感染我校的样本文件。

也在几位大佬的帮助下得到了一些可用于 Linux/MacOS 的样本。

 

经过样本分析和综合汇总其他情况,

我们发现攻击者其实是使用混合手段来获取『0 号感染机』的,

至此,我们完成了对 WannaCry 的传播分析:

 

攻击者通过扫描、邮件、捆绑预埋、OFFICE 宏、CVE-2017-0199 等多种方式传播蠕虫,

一旦成功种植第一个机器,也就是『0 号感染机』,

蠕虫会通过中招机器扫描当前内网内所有机器的 445 端口试图远程执行恶意代码。

此过程循环进行。

 

TimeLine:

四月十五日,

获得方程式工具包,开始对我校公网 IP 进行了应急扫描,并向学校有关组织发出了通报。

但出于错误的认识(认为 Windows 7 默认关闭 445)和资源限制,

只扫描了服务器段的 IP。

五月十日,

在外接到团委电话,表示一台重要电脑中招,初步判定为邮件或恶意脚本传播,未重视。

五月十二日,

接到大量勒索病毒集中发作报告,入侵路径争论中,

通过多个校内媒体向同学推送临时补丁一箩筐解决方案、发布部分 CVE 自测 PoC,

建议 XP 用户立即断网升级,

建议同学们不要使用 Office 宏并检查文件后缀名,

对于已中招机器断开网络,完整安装原版 Windows 10,

同时提醒同学们注意邮件安全性。

五月十三日,

发现第一个 Windows 10 感染者,感染路径逐渐明晰,

获得全平台样本,并对样本进行分析和测试。

通过校内媒体推送最终完整解决方案。

请放心,Linux / MacOS 样本不具备传染性,应为不同作者作品。

五月十四日,

学校网络中心开始封锁外部入站请求,并在主交换封锁 445 端口。

五月十五日,

我们开始将 MS17-010 的 PoC 用于扫描教学区域 IP 地址,

检出率为令人震惊的 23%,

我们开始向这些幸运但仍不修复漏洞的同学发出弹窗提示。。。

 

问题

当时笔者在外地离线、社区成员少且位置分散,

第一手样本获取与评估缓慢,严重地降低了安全响应水平。

在这个过程中,我们也暴露了自己对于 Windows 系操作系统的默认配置并不十分熟悉等问题。

相对于学生组织提供的安全响应水平,教育网一贯的响应能力低下的问题更为严重= =

 

致谢

感谢在本事件的处理中做出贡献的社区 2015 级曹宇同学。

感谢我扯了好久犊子的安全工程师老哥们。

感谢我的花厂软挑土豆大佬和弯弯大佬以及主办方原谅我的比赛时离线。

 

PS:

在很久之前我们的讨论中,曾经也想过将 RCE、蠕虫与勒索相结合,但没有想到这么快就成真了。

真的不感觉神洞用来勒索很浪费么亲!

发表评论

电子邮件地址不会被公开。 必填项已用*标注