11月28日,“滴滴崩了”事件影响持续。滴滴官方回应称“由于系统故障,滴滴App服务出现异常,经技术同学紧急修复,目前正陆续恢复中。”但对于系统故障的具体原因——究竟是内部业务调整还是外部攻击,滴滴官方并未给出明确解释。
对于滴滴闪崩背后的原因推测,360安全专家对第一财经记者分析称,可能有几个方面原因:一是系统更新升级过程中出现了编程错误、逻辑错误或未处理的异常情况。一般情况下,互联网厂商发布更新都会在晚上,与滴滴发生故障的时间也能对应,当然业务升级维护是放量更新,但现在滴滴全平台、全业务都故障了,说明肯定是他“家里”的问题。
二是服务器故障:比如滴滴的核心机房,可能恒温恒湿环境出了问题,导致服务器过热、CPU烧了,或者核心机房所在地发生了自然灾害如地震、洪水、海啸等,这种情况下,硬件需要重新更换,里面的服务软件也需要重新配置,恢复周期相对较长,但这个可能性比较小。
三是第三方服务故障:滴滴的后台架构可能使用了第三方服务或者组件。如果第三方出了问题,也可能会影响滴滴的正常运行。但出于安全性考虑,滴滴可能不会将核心业务托管给第三方,这个可能性也较小。
四是攻击层面,如DDOS攻击:黑客采用分布式拒绝服务的方式,抢占了大量的服务器资源,导致用户无法访问,但这点的可能性不高,因为DDos(分布式拒绝服务攻击)不会导致数据出错,而且滴滴从体量上来说,有足够的成本和能力去对抗。或者其他网络攻击:某些黑灰产团伙可能会通过拖库盗取数据,然后在暗网上售卖,在这个过程中不排除会有误操作,破坏了数据库。
以及有可能发生了网络攻击黑客对滴滴的底层数据、业务代码进行了加密。据披露现象,用户的账单和打车数据都算错了,存在一定可能是滴滴为了避免更大损失主动暂停了业务。近期勒索攻击事件屡屡发生,月初,某金融机构就是因为遭遇勒索病毒攻击造成了业务停摆。
但网络安全公司专家孙甫对记者表示,如果是来自外部的黑客攻击,公司一般会在第一时间进行声明。他的猜测更集中于滴滴发生了内部重大业务调整,或有新业务接入原系统,但没有做好预案,导致关联业务或关联系统出现重大故障,这是大公司系统故障最常见的原因。
其他可能性包括员工违规操作或误操作,导致整个系统停产;员工误操作或违规操作导致内部系统或系统端口意外暴露,如员工为了方便远程办公,把3389、445等端口暴露在外,端口一旦暴露,就有可能打破一切隔离措施;或内鬼恶意行为,如前两年曾发生过微信供应商微盟的核心工程师因对公司不满,人为删除大量的用户数据,导致系统一度停止服务,很多数据最终也无法恢复。
但需注意的是,此次滴滴事故爆发后,滴滴体系产品全线崩溃,并未发生容灾设备及时响应进行辅助的情况。容灾(Disaster Tolerance)是指在自然灾害、设备故障、人为操作破坏等的灾难发生时,在保证生产系统的数据尽量少丢失的情况下,保持生存系统的业务不间断地运行。
一位网络安全领域人士对记者表示,理论上技术平台会配有容灾设施,一旦数据中心、系统遭遇攻击或不可控外部问题,容灾系统应该自动启用,并继续提供不间断的服务。但从滴滴此次事故的表现来看,似乎云服务方面并没有提供充分的容灾支持。
滴滴系统采取多云服务架构,合作方包括腾讯云、阿里云,以及滴滴自有云计算服务等。腾讯云官方页面案例内容显示:2015年携程、艺龙事件之后,网络数据安全再次成为热议话题,在滴滴打车的发展过程中,也曾遭遇过多次黑客攻击。滴滴打车联合创始人兼CTO张博谈到,目前滴滴打车大部分服务都在腾讯云上,在安全方面,目前,除了滴滴内部有严格的安全控制外,外部主要是通过腾讯云来帮助实现的。比如黑客攻击,尤其是DDos攻击,腾讯云有一个“宙斯盾”安全体系,可以扛下100G以上流量的DDOS攻击,这对于一般企业来说,都是很难具备的。在这一点上,腾讯云可以说为滴滴提供了很好的安全保障。
另外,滴滴云计算有限公司于2018年4月18日成立。法定代表人万伟星,位于北京市,是一家以从事互联网和相关服务为主的企业。企业注册资本5000万人民币。
孙甫对记者表示,容灾未能启动侧面验证他所猜测的主要事故原因——自身业务调整引发故障。因为灾备是在系统遭到破坏或攻击时,原有系统被迫停掉,灾备系统才得以启用。但如果是新业务接入,或是内部人员的违规操作,结果就是整个系统都乱了,不知道从哪里进行恢复。打个比喻的话,就是大楼有备用电源,停电时是可以救急,但如果是维修工由于误操作或违规操作将一个楼层的电缆给剪断了,或者是正在对某个楼层的线路进行重新铺设——也就是所谓的企业业务调整,这样的情况下即使将备用电源启动了,整个楼层照样停电。
更何况,孙甫强调称,灾备系统的切换并不像外界所想象的可以丝滑无缝。在很多情况下,灾备系统只能保证系统有救,但不是一定能瞬间得救。
另外,孙甫对记者表示,从已有报道所披露的信息来看,滴滴出现了很多系统“紊乱”状态,如价格混乱,一呼多应等,而不仅仅是简单的崩溃或停服。这说明系统不是完全不能运行,只是运行得不对,之后又因为系统的校验机制导致大量出错被发现,从而又崩溃。如果是业务调整或新业务接入,其中没有做好充分的上线测试,或者上线后发生某些意外,就有可能造成上述情况。
除了主要猜测的自有业务调整原因,孙甫表示,滴滴事故不太可能涉及企业没做物理隔离或黑客只打应用层的原因。一方面,如果一家公司没做物理隔离,不用等别人攻击,网络蠕虫、扫描器等简易攻击就可以随时摧毁一家公司,对于一家这么大体量的公司来说,这么大的隐患不太可能一直隐藏。至于黑客攻击层面,孙甫表示,“黑客攻击哪里管你是哪一层,哪里有漏洞就打哪里。”
文中孙甫为化名