因删库事件扬名的微盟,微盟删库事件( 五 )


有一台服务器是专门做程序和数据库的备份 。那个时候我是经理,每天晚上下班前,我都要把数据同步到备份服务器里面,备份服务器只有我们进 。机房也必须要公司的证明才能进,所以从理论上来说,如果要删库的话,只有我一个人有权限 。当然,这个大家也都可以想到,所以我也给老板提了建议,我每天把程序和数据库除了导到备份服务器外,还会导出到本地,然后发给老板 。
这样就算遇到意外,最多也就损失一天的数据 。后来去了几家大公司后,就更加严格,每一层的权限都控制的很死,老板手上一定自己管理着一个备份 。即使后来使用了云服务器,也会做一个备份,让老板管理 。每天都要检查文件是不是最新的 。微盟也算是做的挺大的一个公司,难道老板或者总监不知道要自己掌握好备份吗?我真的感觉这个太不可思议了,因为数据库和源文件,对于一个互联网公司就是命根 。
二、程序员会不会做这种事?我从业的经验来说,从来没有遇到一个程序员会真的这么干,虽然嘴上有时候会抱怨,但是大家都知道这是违法的 。我做管理的时候,也是因为有这种担心,所以会把备份做到极为周全 。也会经常给下面的人强调,有任何不满,可以走法律程序,但是如果删源代码或者删库,那就是属于违法行为,要坐牢的,自己掂量清楚这个轻重关系 。
所以我从来没有遇到一个程序员会真的做这种事,而且代价多大,大家心里都很清楚,我身边的朋友或者公司,也从来没有遇到这个现象,最有肯定就是批量操作出错,把数据弄乱了,但是数据回滚一下就行了 。三、总结根据我自己的经验判断,这么大的一个公司,一个小小的程序员就能拿到数据库的最大操作权限,这种事情的可能性很小 。
微盟这么大体量的公司,核心运维工程师竟然可以凭一己之力删除主备服务器上的数据?是技术问题还是管理问题?
“从入门到删库到跑路”!原本一个口头禅笑话 ,居然神奇般的发生了,而且还是一个有着3700员工、在香港上市的公司 。这童话般事件的发生了,暴露了从技术到管理、安全合规,风险管理甚至公关都有很大的问题 。不知道这3700名员工中有多少人是在这些部门,不过我认为这些部门的人90%都可以开除了 。管理上方面员工管理,员工岗位培训、安全保障培训有没有到位,安全和保密协议都有没有签,人力资源对员工状态了解够不够,有没有专门指导和帮助机制?员工权限控制做到了么?运维、开发、安全和DBA有没有分工,有没有专职人员?员工有没有操作互备和相互确认机制?从技术上方面架构系统架构上首先不合理:数据库为啥没有做多层架构(数据库,缓存、内存数据),没有分布式架构(分区,分库,文件系统分布式存储) 。
备份数据备份机制有没有,数据备份检查有没有?数据回复机制有没有,灾难演练有么有做过?冗余热备库有没有?审计和告警监控告警有没有、操作和数据审计有没有 。从公告中内容,操作审计是没有,以至于要大量时间反向追踪查找IP和用户 。正常情况下应该是在事故发生时间,异常登陆和操作发出告警 。然后是服务器、和数据应用告警,然后是业务上告警 。
在业务发生告警时候,应该马上就能查到什么时间、来源IP,谁操作了什么 。一般来一个合格的跳板机或者堡垒机都可以实现操作审计,对异常和破坏性操作予以告警和预先阻止,一个大型的公司应该是必须满足的,有专门商业产品可供选择 。小公司和团队也可以选择开源软件方案,也能满足绝大多数的审计和告警需求 。比如Gravitational的Teleport工具就可以满足对SSH会话的安全审计,有关这个工具可以参考虫虫最新一篇文章介绍,Teleport用BPF增强SSH会话的安全审计技术方案 。

推荐阅读