作为一名安全应急人员,每天要处理安全系统的大量告警,据笔者了解,有些公司的安全应急人员每天要处理几百甚至上千个告警,且大都是无效告警,其中真正的安全事件是否遗漏、响应是否及时,没有人知道。此外随着业务上云和使用云原生开发模式,告警的数量也随着容器的量级大幅增长,应急人员能否长期保持专注力?大量的无效告警显然已经影响到应急质量和应急人员的生活质量了(周末值班)。安全系统提高告警质量可以解决这个问题,但在现实环境中,安全系统众多且策略研发同学一般需要一个较长的周期才能优化,有时候优化甚至赶不上告警波动变化。
我们要解决的三个问题:
1、策略逻辑和告警逻辑分离:应急人员不再被动接收告警,将策略和告警逻辑分开,应急人员可以根据告警组织自动化响应流程
2、精细化运营:解决重复误报、规避告警风暴和业务特性误报,加强关联分析和划分响应优先级
3、精准事件自动化响应:分析日志/数据、找人和止损操作尽量自动化,提高MTTR
我们使用SOAR架构实现了策略和告警的分离,为什么选择SOAR而不使用其他方案——比如让安全应急人员直接修改策略,主要有以下几个原因:
(1)策略研发的策略逻辑涉及比较复杂的算法,运营人员直接修改策略需要非常高的学习成本,效率低下,也容易出现问题
(2)很多实时策略基于Flink等流式平台实现,需要开发JAVA,团队应急人员的技能栈主要是Python/JavaScript(3)我们的分析逻辑、应急逻辑针对不同场景可以复用,计算平台不支持
SOAR正好和我们的几个需求完美契合。
1、支持多途径的源数据输入、支持自定义插件开发,基础平台功能上扩展性强。
经过调研分析,目前的SOAR产品基本都包含三个核心模块:Dashboards、Cases、Playbooks,我们的SOAR也是基于这三大模块构建而成
Dashboards除了兼顾以前SOC的Dashboard功能之外,还增加了特有的对Playbooks的展示,这个模块我们在实现上复用了自有的SOC系统。
Cases/Alerts则类似工单,目前我们已经有现成的工单系统,所以会按照SOARcases的特征对工单系统进行改造,不再重新建设这个模块。
Playbooks是SOAR系统的最核心功能,包含Playbooks的编写、应用管理、插件的管理,但其核心是基于事件驱动的工作流系统,也是我们这次SOAR系统建设的重点方向,以下重点介绍:
公司有百万级的集群和设备,每天处理的数据量非常大,引擎需要具备海量数据的处理能力,另外业务希望平台尽快落地且跟业界对标,基于此我们决定在开源事件驱动项目FLOGO上进行二次开发,快速满足业务需求的同时,定制我们自己的SOAR系统。
FLOGO的优势:
功能齐全,模块化架构,前端可视化编排、后端调度引擎、原生插件等一应俱全,方便快速二次开发;
后端使用Golang编写,借助Go语言的高性能和并发优势,提高安全事件响应速率,在海量数据输入场景下提升尤为明显;
主要有以下几个特点
通过对系统整体的无状态化和配置远程化改造实现前端控制台Web和后端应用在腾讯云TKE集群上的部署和自动扩缩容,目前在日均百万级的数据处理场景下运行稳定;
增加控制台的员工认证和权限管控机制,提升系统的安全性;
用户通过在剧本画布上对插件进行编排即可实现个性化的运营需求
平台默认会提供一些通用安全组件,也支持业务自定义开发
SOAR在接收到源数据后,经常需要对数据的上下文进行补充,为此我们将SOC数据接口封装为插件和函数两种形式,让运营人员可以在其他插件配置中通过函数快速整合上下文信息,实现灵活度更高、复杂度更低的剧本编排。
除了以上这些通用插件,还有其他一些安全运营所需的插件,支持Python/JavaScript,程序引擎中约定了插件的接口格式,开发插件时实现对应接口即可。
插件接口:
插件示例:
在旧式的运营中我们最痛的两个点:
(1)告警风暴处理。重复告警或者业务特性引起的大量告警,反馈优化周期长
(2)响应优先级。安全系统的告警大多数仅针对告警场景做的危害程度分级。在运营需要有自己的响应优先级分级指标和能力。
我们把策略告警数据接入SOAR平台,增加了两个插件来解决以上两个问题
针对告警压制的处置方案有:规则过滤、基于IP/文件等属性做聚合归并、业务历史基线对比等方法,我们开发的这个插件核心是将这些功能改成配置化放到配置中心,通过把规则和流程分开管理,规则可以很快迭代的同时,也不影响现有系统的运行,一次优化流程10分钟就可以上线。
不同的告警划分响应优先级的方案有所不同,木马类告警我们使用了文件二次分析方案,进程网络类异常告警我们使用了上下文关联分析,我们将不同的分析方案都封装成插件供不同的事件类型过滤调用,从而根据二次分析的结果做进一步的分级和打标签。
附EDR的WebShell告警的SOAR剧本示意图:
安全是在不断发展和变化的,安全运营仅仅是做被动响应很难跟上时代的变化,通过SOAR平台,安全运营提高了效率,也更好的发挥了自己的作用。除了洋葱EDR我们也在将在Web漏洞扫描器(“洞犀”)、WAF(“门神”)、NIDS/DDoS防护(“宙斯盾”)等安全系统也将会接入SOAR平台,未来在系统联动、剧本建设上会持续迭代。与业界先行者(如Siemplify、PaloAltoXSOAR、Rapid7InsghtConnect、雾帜HoneyGuide、碳泽千乘)相比,我们数据面板、剧本等平台功能方面仍有一些差距,未来也会持续建设。
最后,感谢运营团队、研发团队对我们SOAR平台建设运营的帮助与支持。对腾讯的SOAR商业化产品感兴趣的同志可以看看腾讯云的SOC产品。
1、梳理:近三年Gartner对SOAR定义的不断变化-安全内参决策者的网络安全知识库2、DefinitionofSecurityOrchestration,AutomationandResponse(SOAR)-ITGlossaryGartner3、GitHub-TIBCOSoftware/flogo:ProjectFlogoisanopensourceecosystemofopinionatedevent-drivencapabilitiestosimplifybuildingefficient&modernserverlessfunctions,microservices&edgeapps.