当前位置: 首页 > 科技观察

删库的背后是权限控制的缺失

时间:2023-03-13 13:11:25 科技观察

“删库”事件过去了。微盟原计划28日恢复商户服务。神奇的舆论把波浪推得越来越高。观众一时吃瓜得痛快,公司纷纷跟着热点走,踩着别人的失误往上爬,还可以做特技踢和劈叉。整个警卫圈都喜气洋洋。其实大家都心知肚明,最简单的双审就可以避免这件事,多一个中断,少损失12亿。那为什么连最基本的操作都做不了呢?一、原因分析有人指出,此次“删库”的原因是微盟没有使用堡垒机。仅此而已吗?爱因斯坦说,问题往往不会发生在解决了这个层面上。现在很多互联网公司都对自己的技术很有信心。为了节约成本,他们会选择基于开源软件自主开发安全产品。但是,在设计产品和管理产品的过程中,难免缺乏专业经验。专业的人做专业的事。没有钱谈安全,可能赔了钱还抓不到狼。“删库”这种血淋淋的事情在历史上已经重复了很多次,有的是故意破坏的,有的是误删的。说到底,都是人为因素。当你开门的时候,这个图书馆迟早要被删掉。即使现在没有动力,也不能保证没有人为错误的可能。人类总是有犯错的可能,安全是一个神奇的问题。任何小错误都有可能发展成大规模的损害。所以,运维安全的第一步就是控制“人”的权限。只有建立成熟的权限控制体系,才能最大限度地减少和消除人为的不稳定性。2.总体方案数据中心运维安全体系分为身份验证、授权、访问控制、审计和主机保护五个方面,授权+访问控制实现权限控制。从字面上理解:授权就是给相应的人(人+账户+资产)授予相应的权限,而权限控制就是获得权限后允许做什么,不允许做什么(时间+地点+操作).两者本质上是授予和执行的关系。1.授权架桥铺路在数据中心,根据不同的业务场景,存在三种授权通道:工单申请、动态授权、静态授权。(1)工单授权操作员根据每天需要处理的事务向部门领导提交工单申请,包括:服务器IP、账号、运维项目、时间范围等,以及operator只有在leader批准请求的访问权限后,才能在堡垒主机中查看。优点:按需供应,通过流程严格控制访问权限。缺点:当需要处理紧急事项时,耗时的审批流程会拖延处理时间。(2)静态授权静态授权可用于人员固定、访问对象固定的低风险访问权限。checked账户为只读账户,权限较低。在执行授权的过程中,通常伴随着通用的策略设置来定义基本的权限,主要包括人、账户、资产,偶尔也会有事件、位置、操作等策略配置。优点:细粒度的权限控制缺点:配置过程相对复杂,调整困难(3)动态授权相对于静态授权,入口较多,配置复杂。动态授权通过属性和标签提供了更方便的配置方式。例如:根据用户部门(系统、数据库、网络)、角色(管理员、值班员)、设备类型(主机、数据库、中间件)、业务系统(网银、手机银行)等,自动生成根据标签访问权限,实现动态授权。优点:配置灵活,多种组合条件缺点:权限查看和查找比较麻烦2.门禁-车道限速授权阶段足以满足登录访问的基本需求,但还不足以将风险降到最低”人们”。访问控制是对“人的行为”风险控制的有力补充。通过时间策略、源地址策略、操作规则的进一步设置,结合人、账户、资产的基本权限,形成六维细粒度的权限控制体系,实现最小权限管理。时间条件:按时间维度缩小权限,例如:2020年1月1日9:00-10:00,每周一至周五00:00-02:00源地址条件:缩小权限根据IP地址的程度,例如:只允许在192.168.1.10-20地址范围内访问运行情况:根据指令,剪贴板上下,磁盘映射,文件传输上下等缩小范围权限的限制,例如:rm-rf*不允许,只允许文件上传不允许下载控制动作:当触发上述规则时,系统执行相应的动作,例如:不拦截但发送邮件告警,阻塞并发syslog,等待管理员批准等目前常见的几种权限控制有:ACL(基于黑白名单)[1]、RBAC(基于角色)[2]、ABAC(基于属性))[3]、在不同的业务场景下,适配不同的techn逻辑手段。3.结语不得不承认权限控制是一件非常吃力不讨好的事情,安全本身是看不到效果的。即使是更好的自动化平台也至少需要人工认可。从前期准备到后期使用,很容易形成成本增加效率下降的局面。的确,树上的果子可以摘下来吃,何必洗呢?但最近,全世界都在告诉我们,你不知道水果是否被果蝠碰过。愿大家身体健康,行业更健康。参考:【1】ACL(AccessControlList)访问控制列表提供基于白名单和黑名单的决策依据,其中白名单用于允许,黑名单用于拒绝。通过访问控制模块,匹配数据,命中则执行设定的动作。比较常见的场景:传统的防火墙策略。[2]RBAC(Role-BasedAccessControl)基于角色的访问控制常用于软件管理系统的用户去中心化。区别于ACL中一对一的授权执行关系,RBAC引入了角色(role),与操作权限和资源权限相关联,适用于操作权限和资源权限控制简单且相对固定的场景,但人事变动频繁使用。一个常见的场景:数据库用户角色(role)管理。[3]ABAC(Attribute-BasedAccessControl)基于属性的访问控制,常用于分布式业务场景下的用户去中心化。ABAC是一种接近于自然语言的权限控制模型。提取异构场景的共同属性,利用属性的自然组合来解决权限控制问题。对于复杂的、分布式的、动态的、细粒度的权限控制需求,ABAC有着不可替代的优势。