最近几天,一则思科员工删库跑路的新闻再一次引发了程序员们的关注。据悉,这位程序员,仅凭一己之力,删掉了思科 456 台虚拟机,导致思科损失 240 万美元,相当于人民币 1650 万。一位程序员告诉雷锋网,程序员删库无非两种理由,一是手滑,二是受到了不公平待遇,一时冲动删库。公司之视码农如手足,则码农视公司如腹心。公司之视码农如土芥,则码农视公司如寇仇。但思科作为一家网络解决方案供应商,发生这样的事,也是让吃瓜群众很惊讶。离职 5 个 月后,思科前员工删掉 456 个虚拟机事情还要从 2018 年 9 月说起,此时距离“作案人”Sudhish Kasaba Ramesh 离职已经过去了 5 个月。据“作案人”Ramesh 描述:2018 年 9 月 24 日,在离职五个月后,Ramesh 在未经许可的情况下,擅自访问思科托管在 Amazon Web Services 的云基础设施。他从自己的 Google Cloud 项目账户中部署了一段代码,导致 456 个 WebEx Teams 应用程序的虚拟机被删除。WebEx Teams 是思科公司一款较为受欢迎的协作办公软件,该应用程序提供视频会议、视频消息、文件共享和其他协作工具等。Ramesh 认罪时表示自己“部署代码时行为鲁莽,并有意无视了可能对思科造成伤害的巨大风险。根据美方检察官的说明,Ramesh 的行为导致超过 16000 个 WebEx Teams 账户被异常关闭,持续时间达两个星期。为此,思科方面共计损失 240 万美元(约合 1650 万人民币),其中包括对问题进行修复所支付的约 140 万美元人力成本和超过 100 万美元的客户退款损失。所幸,此次事件并未导致客户信息丢失或泄露。思科公司发言人在一份邮件声明中表示,“思科已经于 2018 年 9 月快速解决了此次问题,保证不存在任何客户信息丢失或泄露的状况,并及时引入了其他保护措施。”同时,思科表示:“我们将这个问题提交给了执法部门,并在能力配合之下成功将其绳之以法。我们相信整改之后的机制足以防止此类事件的再次发生。”而 30 岁的 Ramesh 或将面临五年有期徒刑与 25 万美元的罚款。目前,Ramesh 已被保释,保释金为 5 万美元,其宣判会将于 2020 年 12 月 9 日举行。但由于认罪协议的更多细节尚未公开,Ramesh 此举的动机还不明确。根据上一次微盟删库事件,吃瓜群众也猜测,这很可能是受到了不公平的待遇才一时冲动,否则谁会抱着葬送职业生涯的危险去做这种事呢?不过,值得注意的是,根据法院文件,Ramesh 在美国持有 H-1B 签证,而且正在申请绿卡。法院文件提到,“尽管他和他的雇主了解目前的认罪结果有可能影响其正常移民,甚至导致其被驱逐出境,但雇主方……仍然愿意为他保留工作岗位,考虑其继续留在美国并为公司效力的可能性。”看来,Ramesh“一时冲动” 的原因还有待考证。思科是家什么样的公司?那么,思科是一家什么样的公司?根据百度百科的资料显示,思科被誉为“互联网的金门大桥”,一个是它的名字取自 San Francisco(旧金山)的最后 5 个字母,另一个是它的 Logo 源自那座著名的金门大桥,本意是“架起连接不同网络的桥梁”。思科成立于 1984 年 12 月,创办者是斯坦福大学的两个老师,分别是计算机系的计算机中心主任莱昂纳德·波萨克(Leonard Bosack)和商学院的计算机中心主任桑蒂·勒纳(Sandy Lerner)。作为一家 to B 的公司,思科对许多人来说,都是个既熟悉又陌生的存在,它的主要客户几乎全部来自企业和运营商,核心产品是交换机和企业网路由器。思科被称为互联网技术的缔造者,它生产制造了许多互联网运行所必须的设备,某种程度上说,没有思科,互联网的浪潮是否会到来还是个问号。而思科最大的贡献,则在于推出了互联网核心的路由器技术。路由器诞生前,由于厂商们采用的网络协议各不相同,设备之间无法互通,网络只能以一个个孤立的局域网形式存在,直到上世纪80年代,思科推出了多协议路由器,不同网络协议的设备才得以相互传输信息,奠定了互联网爆发的基础。而比路由器硬件更有价值的,则是节点之间互联标准的制定权。对于设备制造商来说,这项授权就好比进入互联网世界的通行证,即便强大如微软、康柏、诺基亚,也不得不在向思科低头。有了这座牢不可破的技术壁垒,在随后到来的互联网泡沫期间,思科一举超越微软,登顶全球市值最高企业的宝座。同时,思科也是华为在美国市场强有力的竞争对手。也正是因为如此,思科发生这样的事情,才会让吃瓜群众们惊讶。删库事件不意外,如何防删库?但事实上,类似的删库事件并不意外。2018 年,顺丰一位工程师在升级系统数据库的时候,不慎将 RUSS 数据库删除,导致很长一段时间顺丰线上发车功能无法使用,带来了严重的负面影响。最后该员工被辞退。还有位自称阿里员工的知乎网友表示,自己刚入职的时候,数据库可以直接用 bash 执行后台增删改操作,各种监管和操作日志机制都不是很完善。有一天,在使用存储过程进行 update 极度重要的表的时候,忘了加 where 条件,就直接敲了回车执行,所以和删库也差不了多少。图片来自知乎用户孤尽今年 2 月,微盟研发中心核心运维人员贺某通过个人VPN 登入公司内网跳板机对微盟线上生产环境及数据进行了严重的恶意破坏,导致微盟的 SaaS 业务服务突然宕机,商家后台的所有数据被清零。该事件发生后,微盟股价大跌,累计市值一度蒸发超 30 亿港元。300 万左右商家的数据在腾讯云协助下,经过七天七夜的努力才被全面找回。3 月初,微盟表示将拿出1.5 亿元进行损失赔付,其中公司承担1 亿元,管理层承担 5000 万元。前有微盟后有思科,大企业不断遭遇“删库”事故,侧面也说明了企业在数据安全管理上存在一些问题。但从根本而言,防止删库跑路的最佳方法,是防患于未然,是将信息安全和员工关怀做在最先。专家给出的预防措施主要是以下三方面:第一,事前预防:要统一运维入口,实现账号和权限的分配和管理,并且要每人独立账号和权限,细化至每个人能做什么不能做什么。同时在统一运维平台上把已知的高危操作都拦截掉,譬如 rm –fr 等。第二,事中发现:通过配置审计规则,对一些会变更系统的操作进行告警,同时要对系统进行完整性等健康监控。第三,事后容灾:对于企业而言,数据是核心,有数据才能在灾难后恢复系统。备份一定要全量备份、增量备份、异地备份等,最好多个机房备份。当然,即便有这样完备的预防措施,删库事件也不是一劳永逸的,还是要解决企业与员工矛盾的问题。参考资料:【1】https://www.justice.gov/usao-ndca/pr/san-jose-man-pleads-guilty-damaging-cisco-s-network 【2】https://www.zhihu.com/question/308154180【3】https://www.zhihu.com/question/375447541