3.11 业务持续性管理
业务持续性管理(BCM)是一个较高层次的管理机制,通常对应到公司层面,它使企业认识到潜在的危机和相关影响,制订响应、业务和连续性的恢复计划,其总体目标在于提高企业的风险防范能力,有效地响应非计划的业务破坏并降低不良影响。以2015年中国互联网行业的标志性事件为例,网易、携程、支付宝先后发生大规模服务中断,这个问题就是业务持续性管理的场景。
BCM的全生命周期方法论如图3-4所示,其中BIA(Business
Impact Analysis,业务影响分析)、Recovery Strategy(恢复策略),实施以及测试和演练都是很重要的环节。BIA的例子:如果QQ的数据库被拖库了对腾讯有什么影响,如果支付宝被拖库了对阿里有什么影响?这两个问题可能有点极端,再举几个可能性更大一点的:如果公司官网遭受DDoS攻击,流量一度超过防御的最大值会有什么影响?如果公司一个主站页面被挂了马会有什么影响?好像这些问题都比较头疼,再举一个轻微一点的,如果一个客服的论坛账号被盗了会有什么影响,尽管这个问题在入侵者那里可能会玩成蝴蝶效应,甚至变成APT,但是一般情况下这个还是比之前的例子要轻微得多,不能getshell的话,改一下口令就完事了。从这里也可以看出BIA跟基于资产权重的风险管理方法论类似,跟威胁建模也有点异曲同工的味道,只不过威胁建模关注的是具体的系统,而BIA关注的是公司的业务。
图3-4 BCM的生命周期
对于风控策略,大多数人会想到DB审计,纵深防御OS防护,应用层防止SQL注入,部署WAF等,这些东西原先放在安全体系里“貌似”完整,而如今放到BCM里一下子就不完整了,为什么?显然你仍然没有回答上述问题:假如被拖库了怎么办。有的人认为管理是无用的,BCM也无助于降低程序的安全漏洞率,但是只会攻防,只会堵洞显然也解决不了企业安全中的那许许多多问题。这个问题很现实,作为安全负责人,老板一定会问你假如被拖库了怎么办,有人会说“我引咎辞职”,这样的回答似乎很有责任感,但对面的人可能就会想:“你是骗子么,公司都快垮了,你走人了?”
一个典型的BCP(Business Continuity Plan)如表3-2所示。
表3-2 典型的BCP示例
业务持续性计划 灾难恢复 业务恢复 业务继续 持续性规划
目标 关键电脑、应用 关键业务流程 流程还原 流程变通方案
聚焦 数据恢复 流程恢复 返回正常状态 将就使用
示例事件 大型机故障 实验室泛 建筑物火灾 应用丢失
解决方案 热备份站点恢复 烘干和重启 新的装备和建筑物 使用手工流程
这里面定义了一系列的视角维度和与之对应的措施,不具体展开了,对于安全团队而言,通常需要根据公司所有的业务简单做BIA,然后根据所有的IT资产权重分类分级,并制定对应的保护策略以及关键安全事件发生后的应急预案。应急预案不只是纸面上的流程,还包括了一系列的技术性措施,例如你的账号保护体系。现实生活中有的人比较反感理论派的原因是只制定纸面的策略,而忽略技术环节的PDCA,不关注如何优化纵深防御来缓解保护失效后持续缩小攻击面和影响面的问题,不关注阻断kill chain,不重视安全事件发生后的应急体系工具建设,以及关键系统的功能中是否支持有损服务策略等,这些问题导致了技术派认为管理是无用的,甚至连安全标准都背了黑锅,其实标准是无罪的,BCM是好东西。
图3-5 德勤的BCM方法论实施路径
图3-5是德勤的BCM方法论实施路径图,更多关于BCM的内容可以上网自己搜索,这里不继续展开了。
参考资料
“德勤业务连续性计划和管理”(http://www.davislogic.com/bcm.htm)。