AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

阿里云 9 月 1 日安骑士升级故障真相

  • 2015-09-10
  • 本文字数:2489 字

    阅读完需:约 8 分钟

2015 年 9 月 1 日,阿里云官方发布公告向用户致歉,称“因云盾安骑士server 组件的恶意文件查杀功能升级触发了bug,导致部分服务器的少量可执行文件被误隔离……对于受影响的客户,我们将立即启动百倍时间赔偿”。9 月3 日,云盾负责人吴瀚清在自己的微信公众号发布了《危机时刻,我只心疼我们的客户》对事故进行总结。InfoQ 针对此次事故采访了云盾负责人吴瀚清。

InfoQ:请您简单介绍一下自己以及在阿里云负责的工作内容。

吴瀚清:我现在阿里云主要是负责云盾这个安全品牌。我们想把云盾建设成为互联网安全的基础设施,中国 IT 的大环境跟国外相比还不够成熟,在云计算安全方面有一些基本的攻防问题需要解决。我们的很多客户对安全并不了解,但是他们的业务有很强的安全需求,所以我们想帮助客户多解决一些这方面的问题,这是云盾诞生的前提。所以我们在云盾里推出了许多产品,比如像 DDoS 防护产品,比如这次出故障的安骑士,这是一款服务器安全产品,主要防止黑客入侵,另外还有一些 Web 应用防火墙,等等。

InfoQ:能描述一下这次事故的具体过程和技术细节吗?

吴瀚清:这次故障发生在 9 月 1 号早上,我们一位安骑士服务端的研发工程师修改了一行代码,由于改动很小所以就绕过了整个测试的流程,直接把代码发布上线了。发布到第一批机器并观察了半小时之后,并没有发现异常问题,于是这位工程师把剩余的机器也发布上线了。到 11 点 40 多的时候,客服开始接到工单,用户反映新启的进程被杀掉、程序文件也被删除。我们在 12 点的时候定位到了问题,同时对这次发布进行了回滚,制止了问题的蔓延。但是之前反馈问题的用户,需要一个文件恢复的过程。我们在系统设计的时候,对于这种异常情况估计不足,尤其是这次情况特殊,并没有批量恢复的机制。因此,我们需要临时写一个程序,下发到受影响的客户服务器上,帮助客户恢复被删除的文件。下午 3 点多的时候我们写完了这个程序,并进行了一些调试,下午 5 点的时候对程序正式下发,下午 7 点多的时候恢复了受影响的客户文件。

在故障发生的时候,很多客户在微博上情绪比较激动,也有一些人借着这个故障在造谣,说阿里云的信息产生了泄漏,这个事情其实是不属实的。阿里云官方也进行了辟谣,这纯粹是一个技术上的故障,跟安全问题没有太大的关系。

InfoQ:刚才您说工程师改了一行代码造成了这次事故,关于这行代码的细节,您能说一下吗?

吴瀚清:安骑士有一个功能是恶意文件查杀,这个功能有一个黑名单机制,这个黑名单是人工运营的,我们会把人工确认过的恶意文件加入到这个黑名单中。这行代码的逻辑有一个条件判断错误——把所有新启动的文件全部判断为了恶意文件,被加进黑名单中的文件进程于是被阻断、文件被删除。

InfoQ:云盾作为一个明星产品,此次安骑士 server 组件上线有没有经过严格的测试并灰度发布?你们的发布流程是怎样的?

吴瀚清:这次是灰度发布的。工程师首先发布了一部分机器,然后观察了半个多小时之后才把剩下的都发布到线上,但是在灰度发布的过程中我们的报警阈值的设置是有缺陷的,没有在第一时间发现这个问题。我们在客户端的发布是有严格的灰度发布流程,整个客户端的发布大概要经过 1~2 个月的时间。但这一次是 Server 端的灰度发布,这个机制还不完善,这也是我们接下来要改进的重点。

InfoQ:在 V2EX 论坛上有用户称将卸载云盾,阿里云官方也给出了卸载方案,目前有多少用户卸载了云盾产品?

吴瀚清:这个具体数据不是很方便透露,但是卸载的用户不是很多,大部分用户还是选择相信我们。

InfoQ:很多云平台开放了 API 供第三方开发相关产品,阿里云上第三方安全产品生态如何?

吴瀚清:阿里云上第三方的安全产品已经有一、二十家了,我们现在也在积极联系国内和国外的安全厂商,帮助他们的安全产品上云。但是阿里云深层的 API 和网络架构也在进行调整以及设计的过程中,国内有几家大的安全厂商正在跟我们一起参与设计,一些重量级的虚拟化的安全产品正在入驻我们的云市场。

InfoQ:已经在阿里云上线的这一、二十家安全产品主要是哪些类别?

吴瀚清:主要是一些服务类的产品,比如渗透测试类、主机加固类,也有一些是服务器安全检查的工具。

InfoQ:官方公告“百倍时间赔偿”是否意味着对用户造成的影响十分严重?用户目前对赔偿方案有什么反应?

吴瀚清:“百倍时间赔偿”好像除了阿里云也没有其他家做这样的事情,这是阿里云定下的一个策略。实际上我们跟运营商去谈的时候也很难有这样的处理机制,运营商根本不知道你的业务跑的是什么东西,所以很难对你的业务进行定量的评估。从这一点上来说,阿里云“百倍时间赔偿”还是比较有诚意。在微博上也可以看到用户的一些反馈,我也能理解用户的业务损失可能远远不止这百倍时间的赔偿,但是我们目前也只能做到这一步了。

InfoQ:方便透露一下阿里云对这次事故的内部总结与处置措施吗?

吴瀚清:主要是四个方面。第一是研发流程进一步的夯实,我们会有专门的运营体系和团队来改进我们的研发流程;第二是我们的监控和报警体制会进一步的完善,这一次也暴露出来了这方面的问题;第三是我们的产品架构设计会重新调整,一些强的功能、带有自保护的功能会上线;最后我们会对组织架构进行一些调整,通过管理来保障未来不再发生这样的事情。

从产品策略的角度来说,我们会更明显地告知用户安骑士都做了哪些事情;同时我们会把安骑士变成一个用户可关闭、可卸载的产品,过去我们做的不好的地方我们会一一把它改善。

InfoQ:产品层面我想追问一下,阿里云会不会加大第三方安全产品在阿里云上的扶植力度?

吴瀚清:我们一直都是鼓励的态度,这其实和云盾本身是没有太大关系的。我们只是画了一条线,就是阿里云的安全都是包含了哪些东西——这是我们看到的云计算安全应该要有的功能和服务。但这不是说其他的第三方安全厂商不能来做,我们非常希望——也非常鼓励第三方安全厂商入驻阿里云。

InfoQ:感谢您接受我们的采访,谢谢。


给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-09-10 11:4315655
用户头像

发布了 64 篇内容, 共 25.2 次阅读, 收获喜欢 11 次。

关注

评论

发布
暂无评论
发现更多内容

【Python 基础学习】-列表

度假的小鱼

11月月更 python列表

架构实战营-模块5课后作业

Mr.M

python数据分析-pandas基础(4)-数据映射apply

AIWeker

Python Python数据分析 11月月更

极客时间运维进阶训练营第五周作业

好吃不贵

先到先得!阿里淘系内传322页Java并发编程核心讲义学习笔记

钟奕礼

Java java程序员 java面试 java编程

涨薪50%,从小厂逆袭,坐上美团L8技术专家(面经+心得)

钟奕礼

Java Java 面试 java编程 程序员 java

【Python 函数】-介绍

度假的小鱼

11月月更 Python函数使用方法

ipv6地址概述——了解ipv6与ipv4不同

初学者

网络 11月月更

C++---类型萃取---is_array && is_enum/is_union/is_class

桑榆

C++ STL 11月月更

python小知识-hook函数

AIWeker

Python python小知识 11月月更

面向大规模队列,百万并发的多优先级消费系统设计

阿里云CloudImagine

阿里云 队列 消费系统

角色扮演?一款跨平台可移植开源游戏!

Jackpop

华为云会议,云上办公更轻松高效

路过的憨憨

华为云桌面Workspace云上办公,方便得很!

路过的憨憨

26k Star!理解Git太轻松了。。。

Jackpop

极致性能!阿里巴巴Java性能优化实录Github首次开源

Java永远的神

JVM 设计模式 多线程 java程序员 Java性能优化

【Python 基础学习】-元组-字典-集合

度假的小鱼

11月月更 Python元组 Python字典 Python集合

Note.js框架中的cluster集群和断言测试的实战剖析

恒山其若陋兮

前端 11月月更

图神经网络之预训练大模型结合:ERNIESage在链接预测任务应用

汀丶人工智能

图神经网络 图学习 11月月更

一文熟悉 Go 的分支结构(if - else-if - else、switch)

陈明勇

Go golang Switch if 11月月更

信息论与编码:线性分组码与性能参数

timerring

数据通信 11月月更 线性分组码

腾讯云大神亲码“redis深度笔记”,不讲一句废话,全是精华

钟奕礼

Java java程序员 java面试 java编程

ipv6地址概述——了解ipv6地址

初学者

网络 11月月更

云原生基础组件选型出发点

穿过生命散发芬芳

11月月更 云原生落地

【网络安全必看】如何提升自身WEB渗透能力?

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

python数据分析-pandas基础3-数据对齐

AIWeker

Python Python数据分析 11月月更

824页23种设计模式全解析,搞定设计模式各种难题

小小怪下士

Java 程序员 设计模式

从零开始读源码,阿里最新JDK源码剖析笔记在架构师社区火了

程序员小毕

Java 程序员 后端 jdk源码 架构师

2022-11-26:给定一个字符串s,只含有0~9这些字符 你可以使用来自s中的数字,目的是拼出一个最大的回文数 使用数字的个数,不能超过s里含有的个数 比如 : 39878,能拼出的最大回文数是

福大大架构师每日一题

算法 rust 福大大

支持向量机-选取与核函数相关的参数:degree & gamma & coef0

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

在child_process域和错误的冒泡和捕获实践【Note.js】

恒山其若陋兮

前端 11月月更

阿里云9月1日安骑士升级故障真相_安全_魏星_InfoQ精选文章