工程师误删了公司生产数据库,如何看待数据安全架构的脆弱性?
Hollis
共 3120字,需浏览 7分钟
·
2021-07-04 09:32
01 背景
这个事情发生在两年前,是某丰的工程师,根据网上披露的信息,大体情况是这样:首先工程师接到了需求变更的任务工单,需要进行数据库SQL执行操作,并事先准备好了SQL的脚本。接下来通过登陆跳板机就进入到了生产数据库的管理端,然后运行Navicat-MySQL的客户端管理工具。
这时候问题出现了,他发现自己选择错了数据库,但是SQL脚本已经粘贴上准备执行了,所以他的目的是按delete键删除选定的执行SQL语句,可是万万没想到鼠标光标跳到了数据库实例上面,这时候的delete键就是删除数据库实例了,结果这位工程师还不看弹出框的提醒,直接按了回车键。最后的结果那就是运营监控管控平台挂了!故障持续了10小时,对企业造成了严重的负面影响,直接负责人也被解雇。
拿出来这个事情聊,其实并不是想再吐槽什么,只不过为我下来真正想吐槽的其他事情做一个铺垫,我认为某丰的安全管理做的有几个亮点是可以拿出来说的。
关键数据库的部署必须是在独立的安全域内,任何外部的操作需要通过跳板机实现。他们做得很好,甚至达到了政府信息中心安全的要求。 数据中心管控要按照最小范围考虑,谁出的问题,能最快地追踪到。 数据库的操作需要走需求变更流程,而不是被工程师随心所欲地修改。
其实他们出现的问题是赋予MySQL数据库登陆操作的权限太大了,可是直接干库,也就是说越是关键性高的平台系统,运维过程中越要注重具体细节,你不能上来就给root。
02 你的数据库在互联网开放端口吗?
领导:你把事情搞复杂了,要简单地来, 我:咋简单? 领导:大厂云的数据库端口开放给国企云,国企云就部署微服务访问大厂云数据库。 我:我说数据库暴露在互联网很危险,而且执行一次业务在公网来回传递,会拖慢平台整体性能。 领导:你说得也太玄乎了!
有道无术,术可成;有术无道,止于术
欢迎大家关注Java之道公众号
好文章,我在看❤️
评论