企业信息安全建设初期,在网络层、系统层、应用层、数据层等部署了一系列安全设备和管控措施进行日常运维,并确保其稳定运行。但往往会发现安全状况并没有得到有效的改善,安全问题仍然频发,究其根本原因,是没有进行有效的安全运营。那么,企业如何建设有效的安全运营体系呢?

一、安全运营是什么

有一些安全工程师非常喜欢写一个扫描器、做一个HIDS的DEMO、搭建一套大数据分析的平台、分析某个漏洞的细节并研究POC,这些工作都是有意义的,但这不是全部。

“手段不是目标”,企业多数情况下是为产出付费,而不是为知识付费。在大公司,解决问题的需求很强烈,在安全技术、安全管理、安全开发等角色都具备的前提下,老板发现某一些安全问题总是无法收敛,最终需要引入一类新的角色,对问题进行分析、诊断,发现症结,协调资源,实现目标。自此,安全运营工程师就出现在了世人的面前。他们什么都做,看起来没有技术含量,但他们的职责非常清晰:为项目的最终目标负责。这里最重要的是解决问题,一切影响目标达成的因素,都是运营的职责。

参考上述内容,安全运营可以定义为:“为了实现安全目标,提出安全解决构想、验证效果、分析问题、诊断问题、协调资源解决问题并持续迭代优化的过程。”

二、安全运营解决什么问题

让我们仔细观察安全管理员每天的工作内容:他需要每天查看各类安全设备和软件是不是正常运行;安全设备和系统的安全告警查看和响应处理,如入侵检测、互联网监测、蜜罐系统、防数据泄密系统的日志和告警,各类审计系统如数据库审计、防火墙规则审计,外部第三方漏洞平台信息;处理各类安全检测需求和工单;有分支机构管理职责的还要督促分支机构的安全管理工作;填报各类安全报表和报告;推进各类安全项目;有的还要付出大量精力应对各类安全检查和内外部审计。

做过基层安全运维的人对上述场景都会很熟悉,这是金融企业乃至多数大企业各个安全场景的缩影,但不是全貌。如果一个企业只有少量人员、服务器和产品,那么上述内容就是企业安全工作的全部。但是,如果是有上万台服务器,几百个程序员,数以百计的系统,企业安全除了安全设备部署、漏洞检测和漏洞修复外,还要考虑安全运营的问题,从工作量上看,这两类工作各占一半。

占据“半壁江山”的安全运营,重点要解决以下两个问题:

1.安全运营的第一个目标:将安全服务质量保持在稳定区间。

企业部署大量的安全防护设备和措施,在显著提升安全检测能力的同时也带来问题:安全设备数量急剧增多,如何解决安全设备有效性的问题?在应对安全设备数量和安全日志告警急剧增多的同时,如何确保安全人员工作质量的稳定输出?安全运营的目标,是要尽可能消除各类因素对安全团队提供安全服务质量的影响。

举例来说,就像大餐和快餐,大餐靠的是名厨名师的发挥,如果今天名厨心情不好或者换个新人,可能做出的产品质量就会显著下降。而快餐如肯德基,所有的操作都标准化和流程化,就是没学过烹饪的人经过短期培训和严格管理,也能确保炸出的薯条味道一模一样。快餐的标准化流程和管理几乎完全消除了人的因素,确保对外提供的服务质量能够始终稳定,不会出现大起大落的情况。

安全运营的目标之一,就是在企业规模变大,业务和系统日趋变复杂的情况下,在资源投入保持没有大的变化情况下,尽量确保安全团队的服务质量保持在稳定区间。

2.安全运营的第二个目标:安全工程化能力。

安全运营还需要解决的一个问题是安全工程化能力提升的问题。例如企业内很多有经验的安全工程师能够对一台疑似被黑的服务器进行排查溯源,查看服务器进程和各种日志记录,这是工程师的个人能力。如何将安全工程师的这种能力转变成自动化的安全监测能力,并通过安全平台进行应急响应和处理,让不具备这种能力的安全人员也能成为对抗攻击者的力量,这是安全工程化能力提升的收益,也是安全运营关注的问题。

三、安全运营的思考

企业通常从架构、工具和资源三个方面进行安全运营的建设,但实际的安全运营往往并不如人意。因为实际工作中,还会遇到各类突发问题,需要时刻保持思考,并做出适应和改变。

1.难点

当前互联网行业的安全建设引领了全行业的发展,究其原因并不是其资源投入大、市场竞争充分,而是面临解决实际安全问题的压力和需求时,采用了最快最有效的安全方案。如果直接采用传统行业的既有安全解决方案,来试图解决互联网行业的安全问题和需求,无疑是行不通的。所以互联网行业做安全的关键词是有效解决实际问题。

在2010年以前,国内金融行业做安全的思路普遍还停留在监管合规+设备部署的阶段,这在当时是合理的。安全是和需求相匹配的,金融行业是牌照行业,监管合规是安全的首要和最重要需求,安全团队在这个阶段需要最大化的满足监管合规的目标。同时由于国家对金融业的法律保护等客观因素,金融行业的业务系统面临的风险远没有互联网行业高。

但在2010年后,由于网上银行、移动金融的快速发展,以及国内互联网安全环境的进一步恶化,金融行业的安全需求开始发生深刻变化,需要有效解决实际安全问题。监管合规和设备部署经过历年不断的持续改进提升,还是会不断地出现安全事件。如何解决?笔者的理解是,从设备部署向安全有效运营的方向转变,是个可行的思路。

安全运营的核心是安全运维框架,承载安全运维框架的是SIEM平台或SOC平台。金融行业经常遇到一个问题是为什么SOC容易失败?这个问题,其实可以等同理解为安全运营的难点是什么。

(1)企业自身基础设施成熟度不高

安全运营的质量高低和企业自身基础设施的成熟度有很大关联。如果一个企业自身的资产管理、IP管理、域名管理、基础安全设备运维管理、流程管理、绩效管理等方面不完善甚至一团糟,安全运营不可能独善其身。防病毒客户端、安全客户端的安装率、正常率惨不忍睹,检测出某个IP有问题但却始终找不到该IP和资产,检测发现的安全事件没有合理的事件管理流程工具支撑运转,检测发现内部员工不遵循规范导致安全漏洞结果无任何约束,那么安全运营还有什么可做的呢?首先需要把点的安全做好,接下来再考虑安全运营,例如首先把防病毒客户端运营好。

(2)安全运维不能包治百病

由于安全运维框架自身并不具有安全监测能力,安全监测主要依靠安全防护框架。SOC平台自身不产生信息,需要通过安全防护框架建设一系列“安全传感器”,才能具备较强的安全监测能力,在企业内部具备一双安全之眼。所以安全运维建设不能代替安全防护建设,该部署的安全系统、安全设备还是要部署。

(3)难以坚持

安全从业者们都有一个朴素的愿望,就是希望能有一双上帝之手来解决所有的问题。安全问题往往都很棘手,我们总是希望能有一个成本比较低、时间消耗比较少的安全解决方案,但总是事与愿违,因为安全没有速成,没有捷径。但凡和安全运营相关的,基本上都不是高大上的事情,往往是和琐碎、棘手、平淡相关,甚至让人沮丧。所以安全运营经常难以坚持。坚持把每个告警跟踪到底,坚持每天的安全日例会,坚持每周的安全分析,坚持把每件事每天都做好,是最难的。

2.安全检测为什么会失效

单点检测和防御,企业规模化检测和防御是两个概念,很多单点检测和防御很有效,但在企业上了规模后就会出现安全检测失效的问题,严重的甚至导致新的安全机制无法推广和部署,最终不得不取消。

在实践中,如果某次安全攻击没有检测到,其实是一个非常好的提升企业安全运营能力的机会,因为这意味着一定是某个环节弱化导致安全检测失效了。通过每一次对问题的排查和解决,就可以逐步实现安全运营能力的进步。

一般排查的顺序是:单点检测深度不足->覆盖率不足->安全运维平台可用性出了问题->告警质量问题->人的问题。

首先是单点检测手段不足,可能是检测的正则表达式写得不好,或者是攻击者使用的方式没有预先考虑到,也有可能是现有安全防护框架的安全监测根本就监测不到。对这些问题,做针对性的改进提升即可解决。

第二是覆盖率不足导致的检测失效。出现问题的机器或网络区域没有部署安全监测产品,即使有监测能力也可能会失效。比如防病毒客户端安装率和正常率只有80%,那么即使针对已知恶意程序,也只有不超过80%的概率能够监测发现。这其实是目前很多企业安全问题的现状:有监测设备和能力,但安全检测失效。

但企业往往不重视这些灰色地带,而投入重金和主要精力去测试引入部署一些安全概念产品:防APT、威胁情报、态势感知等,其实这些产品哪些能离得开安全监测设备呢?所以这个问题的根本解决方案,就是把部署率、正常率提升上去。

关于企业安全灰色地带,有几个值得关注的地方:

(1)无人关注的资产,特别是互联网资产。漏洞通报平台报出的很多安全漏洞,企业回复往往是:这是一台(测试/即将下线/无人使用/外包人员使用⋯⋯)的设备,我们已关闭。这些无人关注的资产除了服务器,还包括分配的互联网IP、域名,不在安全监测里的系统和应用。

(2)开放在互联网上的管理后台、高危端口、文件上传点。

(3)各种已被爆漏洞的第三方应用。

(4)弱口令,包括系统弱口令、应用弱口令、用户弱口令等,如果解决好了口令的问题,保守估计可以解决企业50%的安全问题。

第三是安全运维平台可用性出了问题,如SIEM健康度监控出问题,这也是安全检测失效的重要原因之一。

第四是告警质量的问题。SOC被诟病最多的是采集了大量数据,但往往不能判断哪些是真正需要关注的告警。告警有效性低,导致大量告警需要人工确认,管理成本太高。现实中安全检测规则的设计不足导致告警数量太多,从而导致安全运营人员选择性的忽略。

第五是人的问题。机制流程也可以理解为是人的问题。如果排除了上述原因,还是有安全检测失效的问题,那就很可能归结于人的问题。比如责任心不强,快到下班时间,匆匆把告警确认关闭敷衍了事;或者人的安全技能不足,不能对安全问题进行有效调查判断。

3.白名单还是黑名单

目前绝大多数安全防护措施、安全检测规则,基本都还是基于黑名单原则,满足黑名单规则的给出告警。黑名单的优点显而易见,假阳性较低,认知理解容易,缺点是漏报率高,能不能检测到安全威胁,很大程度上需要靠概率和运气。

如果从安全有效性角度出发,白名单可能会越来越受到重视。白名单的缺点是假阳性较高,运营成本高,所以需要安全检测具有自学习能力(姑且称为人工智能),形成自动或半自动可收敛的安全检测规则。

4.企业需要什么样的安全和安全运营

企业需要什么样的安全和安全运营?适合自己的就是最好的,或者说投入和收益比最大的就是最好的。企业的安全投入和公司的规模和盈利能力相关,公司规模大,盈利能力强,处于发展期时,预算和人员编制都会增加,业务停滞时安全做得再好也不会追加投入。因为在甲方,安全不是主营业务,信息技术部门已经是公司的中后台职能型部门,安全团队是信息技术部门中的中后台,谓之后台中的后台。所以适合自己的安全就是最好的安全。

企业安全建设可分为以下几个阶段:

第一阶段:基础建设阶段。如果基本的安全体系尚不完备,处于救火阶段或者安全体系化建设捉襟见肘,类似APT攻击的高级防御可以先搁置,先把需要快速止血的安全工作做好,也就是基础安全工作。这部分工作看似不那么高大上,但却是企业安全最基础最有用的“保命”工作,不需要太多额外投入就可以规避80%的安全问题,让企业有一个基础的安全保障。

第二阶段:系统建设阶段。建设各种安全监测防护手段,以及各类安全规范和安全流程,一般采用27001体系+商业解决方案+少量自研可以实现。

第三阶段是安全高阶建设。这阶段基本商业产品很难满足企业安全需求,以自我研发和自动化智能化为特征,核心还是以解决企业遇到的实际安全问题为目标。能进入这个阶段的企业不多,但基本代表了该行业的未来发展方向。

类似软件能力成熟度模型CMMI,安全运营也有个成熟度阶段:

(1)一级:自发级。部署了一些较为基础的安全措施和管控,单点防御投入了较多人力财力,比较依赖于厂商,对于企业安全没有整体把控。

(2)二级:基础级。具有安全运营的理念并付诸行动,建立了较为完善的安全防护体系,并通过安全运营保障安全有效性,具有攻防能力的个人或团队,能够解决实际安全问题。

(3)三级:自动化级。具有自动化监测、响应、处理甚至反击能力,对企业自身安全现状和能力具有全局掌控力,具有入侵感知能力,能进行一定级别的攻防对抗。

(4)四级:智能级。采用了白名单的安全防护原则,具有真正意义的智能安全检测,能够对偏离正常行为模式的行为进行识别。

(5)五级:天网级。天网恢恢疏而不漏,让所有恶意行为无所遁形。这级别的安全,还是一个理想状态,目前为止还没有真实案例。

无论怎样,企业必须要坚持适合自己就是最好的原则。如果需求是一辆自行车,结果来了一辆专机,实际效果也未必理想。

四、结语

笔者一直在企业安全建设中提倡安全运营,确保安全有效性。最近不少银行总行纷纷建立了安全运营团队,规模都在30+以上,虽和互联网大厂还有很大差距,但相比过去已经是非常之大手笔。相信很多金融企业都会跟进,安全运营是企业安全建设实际落地的必由之路。

安全运营,无论是体系方法论,还是工具产品,都还在快速发展完善中。目前制约安全运营发展的最大因素有两个,一是没有特别好的商业化工具,能够结合企业内部的流程和人员,提高安全运营效率。这也是很多安全乙方准备在此发力的领域。二是一万个安全负责人心中有一万个安全运营,实际打法思路各异,没有形成统一的安全运营标准,这方面还有待行业进一步跟进。

作者聂君在金融行业具有多年的安全运营实践经验,现任奇安信集团网络安全部总经理。

本文刊登于《中国信息安全》杂志2019年第8期

声明:本文来自中国信息安全,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。