5 月 19 日更新:见 这里。
5 月 12 日起,世界各地爆发了 WanaCrypt0r 2.0 病毒袭击。我听说过的有名的病毒爆发是震荡波(冲击波),我亲自经历过的是熊猫烧香。本文整理的该病毒和本次爆发的一些资料。此次事件 在 Wikipedia 上也有记载。
漏洞
本次爆发利用的是 Windows 的漏洞 MS17-010,已经于 3 月被 Microsoft 修复。打开了 Windows Update 的电脑应该不受影响。此外,Microsoft 还发布了针对一些已经退出主流支持的操作系统的更新,包括 Windows XP 的。
勒索软件:病毒变迁
WanaCrypt0r 是一个勒索软件,它的工作方式是使用一个固定的密钥加密文件,然后把密钥传输给病毒制作者,并要求用户向作者支付等同于一定某个国家法币(目前见到的是等同于 300 USD)的 比特币。
实际上这种加密勒索的形式以前也出现过,只不过没有流行开来,这次的漏洞给了它传播的机会。什么时候开始出现的这种勒索形式的软件的呢?匿名电子现金(如比特币)出现之后。原因很简单:在匿名电子现金出现之前,接收赎金是一件几乎不可能的事情。传统的绑架犯罪是通过约定地点交收的方式索取赎金,但是病毒传到千里之外的话也没法这样实地收取赎金。邮寄?转账?售卖恢复工具?不可能!这样做是自投罗网,邮寄、转账、交易都是受政府管制的,政府对这种行为不可能不管,等待黑客的只能是国家机器。
匿名电子现金是一把双刃剑,好的方面是它可以保护交易的隐私,坏的方面也很明显,它为洗钱、勒索、非法交易提供了巨大便利。这双面性也是由政府、公权力的双面性导致的,匿名电子现金的好是它能帮助抵御一定情况下政府、公权力的作恶行为,匿名电子现金的坏是它会干扰政府、公权力实行应有职能。此外,脱离实际、实践考虑,纯粹从理论考量,匿名电子现金本身是密码学的美丽成果。我既欣赏数学理论的成果,又希望法律、司法的完善可以消去良民使用受监管交易方式的顾虑、消除使用匿名电子现金的需要。
以后会不会有实体绑架犯要求使用比特币接收赎金呢?
全球化与本地化
WanaCrypt0r 2.0 是少数几个具有多个语言的病毒。它有非常多个语言的界面来索取赎金:英语、简体中文、繁体中文、丹麦语、法语、德语、意大利语、日语、韩语、俄罗斯语、西班牙语……各种常见语言都在列表中,真是为各国人民交赎金“提供便利”。
中招的群体
目前流传的大量中招的群体有:
- 英国医院(这简直是吃人)
- 大学,很多人的毕业设计被搞坏了
- 中国的公安系统、中石油、出入境管理局
- FedEx
- ……
病毒的后门
经过 MalwareTech 分析,广泛流传的毒株中有一个后门代码:它会尝试访问 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com,如果访问成功,那么病毒会停止运作(不仅限于不进入加密逻辑,还包括不自我复制),否则病毒会继续运作。可以想象病毒编写者在本机设置了 hosts,从而防止自己不小心被反噬。
实际上,在 MalwareTech 的人刚开始分析这个病毒的时候,他们就发现了这个域名,于是他们注册了这个域名,经过深入研究他们才发现他们这一注册,不经意间就防止了病毒的扩散和运作!
I will confess that I was unaware registering the domain would stop the malware until after i registered it, so initially it was accidental.
— MalwareTech (@MalwareTechBlog) May 13, 2017
感谢他们!
国内访问后门域名不通畅,以及一种搞笑的替代措施
微博用户 @圣卡伯利控 发现 在中国境内访问那个后门域名有 44% 的丢包率,他认为是中国的网络管制导致的。我对此表示存疑,可能只是网络不够快导致的。
@程序员Delton 的 这条微博 提出了一个解决方法(读作“DDoS 百度”):(下面的微博转储加了格式,但是不会修正错字)
「墙内玩家的 WannaCrypt 免疫补丁」
由于 WannaCrypt 在运行前会尝试连接一个特定域名,如果能成功连接则不会加密你的文件。目前该域名已被注册并开始工作。然而该服务器在国内丢包率极高,使得很可能此免疫会失效。一个有效的方式是在 C:\Windows\System32\drivers\etc\hosts 中手动加入如下文字:
www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 220.181.57.217这会让病毒尝试连接百度,打打提高了墙内玩家的免疫成功率
腾讯电脑管家屏蔽了 Microsoft 三月发布的更新
以下是 这条微博 的转储:
吃惊//@爱搞事的月神:所以是你们助长盗版喽//@JuliusV: 所以这是默许&支持盗版咯//@电脑管家客户服务:亲,微软发布的补丁KB4012212\KB4012215包含ci.dll文件可能会导致少部分盗版系统的电脑重启反复蓝屏,无法正常进入系统,因此管家会智能筛选给出修复/屏蔽建议
嗯,微软三月份发布的更新被电脑管家屏蔽了@腾讯电脑管家
这让我想起 Raymond Chen 在 2003 年回答过的一个问题,看起来是因为有些盗版系统替换了部分系统文件,导致更新的时候会有不一致的文件,于是循环 bug check。
Linux 用户“不孤单”
根据 @HackerFantastic:
Great news everyone! WCry 2.0 functions PERFECTLY under Wine, you can infect your Linux desktops too if you are so inclined! ;-) pic.twitter.com/kP2IC8YJ5m
— Hacker Fantastic (@hackerfantastic) May 13, 2017
这个恶意软件可以在 WINE 下完美运行。
“关门放狗”
@phithon别跟路人甲BB 的 这条微博 说有人为了证明安装了 MS17-010 提到的修复程序就不会有问题,就在安装了补丁的机器上运行了病毒程序。
于是他的机器就被加密了——这个修复程序是防止程序被远程复制到自己的电脑上。这个人的行为可真是“关门放狗”、“瓮中被鳖捉”和“把头闷进有空气净化器的被子里面放屁”!
Windows XP 的另一个漏洞
根据比尔盖子他的博客的 这条微博,因为 Windows XP 的密码学 API 不够安全,而病毒使用的是密码学 API,安全研究人员已经能够通过这个漏洞把病毒使用的 AES 密钥计算出来——真是把 bug 当 feature 的典范。这让我想起来了密码学基础课程上 John Paul Steinberger 教授讲的 OAEP 和 OAEP+ 的故事——正好利用了 RSA 方程的部分可解性(Coppersmith 算法),把 RSA(假设是密码学安全的)和 OAEP 结合才是安全的!
清华大学的校内信
清华大学在 4 月爆出 EternalBlue 之后紧急屏蔽了 445 端口,防止了本次疫情在清华校园网扩散。事件发生后我们立刻收到了来自信息化工作办公室的邮件。
尊敬的校园网用户:
5月12日晚,勒索病毒WannaCry全球爆发,已波及近100个国家和地区,7.5万多台电脑被感染。中国境内已有大量疫情报道,多所高校疫情严重。勒索病毒利用windows操作系统漏洞入侵,以加密方式冻结全部用户数据,勒索用户一周内交付高额赎金,否则数据将不可恢复,可能给个人用户带来难以承受的重大损失。勒索病毒利用的漏洞正是4月份爆出的“永恒之蓝”(ETERNALBLUE)漏洞,由于学校4月15日紧急在校园网出口屏蔽了存在该漏洞的多个Windows通信端口(http://postinfo.tsinghua.edu.cn/node/246450),最近的两次全球大规模网络安全疫情均未大面积危害我校网络和校园网内用户。但由于本次爆发的勒索病毒正在以蠕虫方式传播,一旦有师生在校外感染此病毒,将可能导致疫情蔓延校内。为避免广大师生遭受病毒危害,学校将继续在校园网网边界加强防范,同时建议用户立即按照以下提示进行个人电脑免疫操作。
信息化工作办公室
信息化技术中心
2017年5月13日附:微软windows操作系统免疫操作指南
一、临时缓解方案
进入个人电脑的“控制面板”界面,启用“Windows防火墙”,后进入“高级设置”。在“入站规则”里,禁用“文件和打印机共享”相关规则。
二、建议加固方案
- 建议广大师生使用操作系统自动更新升级到Windows的最新版本。
- 使用移动硬盘、云盘等对重要数据进行非本地备份。
- 停止使用Windows XP、Windows 2003等微软已不再提供安全更新的操作系统。
教训
只要匿名电子现金还有价值(可以兑换为现金),这种勒索软件肯定会成为用于广泛感染大众的主流,我们更应该提高安全意识。
- 应当保持更新是打开的状态;
- 及时安装更新;
- 不要安装乱七八糟的“管家”。
请启用 JavaScript 来查看由 Disqus 驱动的评论。