谈谈态势感知
作者:互联网
【注:本文已首发于freebuf】
0x01
网络安全和信息化是相辅相成的。安全是发展的前提,发展是安全的保障,安全和发展要同步推进。要树立正确的网络安全观,加快构建关键信息基础设施安全保障体系,全天候全方位感知网络安全态势,增强网络安全防御能力和威慑能力。
——2016年4月19日,习近平总书记在网络安全与信息化工作座谈会上的讲话
在15年阿里的安全峰会上道哥提到态势感知,国人才开始了解到态势感知,直至习大大在“4.19”上正式谈到,国内的乙方的对态势感知这一块才下了大投入进行研发。
0x02
魏文王问扁鹊:“子昆弟三人其孰最善为医?”
扁鹊曰:“长兄最善,中兄次之,扁鹊最为下。”
魏文王曰:“可得闻邪?”
扁鹊曰: “长兄于病视神,未有形而除之,故名不出于家。中兄治病,其在毫毛,故名不出于闾。若扁鹊者,镵血脉,投毒药,副肌肤,闲而名出闻于诸侯。”
–《史记·鹖冠子》
这篇文言文我们小时候都学过,看不懂的话可以查下翻译。大意即国王问扁鹊为什么最出名?
扁鹊答说:“我长兄治病,是治病于病情发作之前。由于一般人不知道他事先能铲除病因,所以他的名气无法传出去,只有我们家的人才知道。我中兄治病,是治病于病情初起之时。一般人以为他只能治轻微的小病,所以他的名气只及于本乡里。而我扁鹊治病,是治病于病情严重之时。一般人都看到我在经脉上穿针管来放血、在皮肤上敷药等大手术,所以以为我的医术高明,名气因此响遍全国。”
病情分为病前,病中,病后。同样,安全,也分为事前,事中,事后。这次要谈的态势感知就属于事前,事中这一阶段。
0x03
想一下扁鹊的大哥是如何能够在病人发病前就能够铲除病因的?这种事前判断的能力一定是基于大量治疗病人的经验的。同样,态势感知所要求的先验知识也是来自以往的安全事件处置经验以及相应的特征,而为了更高效率地整合以往的经验,则需要深度学习,数据挖掘等技能的加持。
扁鹊的二哥治病则是在病刚发生的时候,这时候将病治好,还需要能够判断病情接下来会发生的情况,是加重还是自愈,会从阴性转为阳性,亦或反之。同样,态势感知也有相当一部分的工作是在安全事件刚发生,比如黑客刚拿到一台主机的权限,态势感知就应该能预判断黑客后续的操作–提升权限,横向移动等,判断可能发生的行为后就需要采取措施,如隔离、断网等。
可以说,态势感知做的就是大哥、二哥的活。
有了这个通俗的例子打基础后,我们再看看严格的定义。
早在20世纪80年代,美国空军就提出了态势感知的概念,覆盖感知、理解和预测三个层次。90年代,态势感知的概念开始被逐渐被接受,并随着网络的兴起而升级为“网络态势感知(Cyberspace Situation Awareness,CSA)”,是指在大规模网络环境中对能够引起网络态势发生变化的安全要素进行获取、理解、显示以及最近发展趋势的顺延性预测,而最终的目的是要进行决策与行动。
(1)态势感知是了解当前的状态,包括状态识别与确认(攻击发现),以及对态势感知所需信息来源和素材的质量评价。
(2)态势理解则包括了解攻击的影响、攻击者(对手)的行为和当前态势发生的原因及方式。简单可概括为:损害评估、行为分析(攻击行为的趋势与意图分析)和因果分析(包括溯源分析和取证分析)。
(3)态势预测则是对态势发展情况的预测评估,主要包括态势演化(态势跟踪)和影响评估(情境推演)
0x04
概念很早就有了,为什么产品却在近几年才落地呢?传统的思维里,只要买了防火墙,IDS等,就可以高枕无忧了。可是现在学习攻击手段的成本越来越低,攻击方式日趋多样化,攻击技术专业化(APT等),做攻防对抗研究产出的新技术不停地更迭,在现在技术背景下,最主要的一点是,会用AI的方法做攻击,而AI只是拥有规则集,然后最终会演化出什么攻击手段我们其实是很难预测的,这也就意味着,传统的安全产品无法实现高度的安全防护。也正是基于这一点的考虑,我个人认为,接下来将会是下一代防火墙和态势感知平台这两款产品的表演时间。以毒攻毒,用AI的方法来对抗AI。
在传统的防御思维里,我们会在安全事件发生之后去取证,溯源,可是对客户造成的损失已经无法弥补,所以我们需要的在事件发生中,甚至发生前去感知到,进一步有针对性地进行防御。
为什么态势感知平台可以做到呢?因为平台背后的专家们能够在以前的安全事件中溯源获取经验,包括各种攻击手段的特征如可执行文件的行为,异常的流量等;在大量数据中提取出特征,这一工作在大数据相关技术发展之前是很难实现的,而现在可以用大数据的方法处理以前积累起来的数据;可以和其他传统产品打通接口,通过各种数据多维度地进行准备分析,包括刻画攻击者画像、攻击路线等。甚至,通过画像的分析,态势感知平台可以分析出攻击服务器的是一个脚本小子,还是APT组织,如果是脚本小子,那就由他弄好了,也不会造成什么危害,如果是APT,则需要应急响应了。当然这些规则一方面需要专家根据经验得出,一方面由AI来学习得出。
可见,态势感知是一门交叉的技术,需要有传统安全能力的支持,又需要有现代的方法进行分析、感知、预判。
具体而言需要用到哪些技术呢?
0x05
主流的态势感知产品支撑技术都是相近的,一般而言,态势感知产品定位为客户的安全大脑,是一个检测、预警、响应处置的大数据安全分析平台。其以全流量分析为核心,结合威胁情报、行为分析建模、UEBA、失陷主机检测、图关联分析、机器学习、大数据关联分析、可视化等技术,对全网流量实现全网业务可视化、威胁可视化、攻击与可疑流量可视化等,帮助客户在高级威胁入侵之后,损失发生之前及时发现威胁。
解释下一些关键名词及其技术。
建模、图关联分析等涉及到算法层面,讲一些和没讲一样,讲多了,在这一篇文章里也说不完,我后续会专门在算法层面在写一篇。
全流量分析,是做很多安全产品的基础工作,因为再高级的攻击,都会留下网络痕迹,哪怕做了混淆,或者故意模仿正常访问,但是在大数据的建模分析下一切都会现身。为了进行流量分析,首先需要拿到流量。通过旁路镜像采集并存储网络全部流量,针对已知网络协议实时解码、元数据提取(非常用的或者私有的协议需大量资源进行分析,由于出现频率也不高,很多产品并没有做这一步),此时可以做两方面的工作,一是通过深度的网络会话关联分析、数据包解码分析、载荷内容还原分析、特征分析和日志分析,真实还原黑客入侵的全过程,从而对网络安全事件进行精准的定性分析,二是快速提取多维度的网络元数据进行异常行为建模,为后续异常数据挖掘、分析、取证建立扎实的基础。分析之后,还要保存起来,方便查询检索及关联回溯分析,实现从线索挖掘到整个攻击过程的完整复盘,为安全事件的准确响应提供依据。
威胁情报,主要从四个方面判断质量,相关性,及时性,精确性,决策性,这一块笔者接触的也不多,也不清楚我司的产品是如何处理这一块的,但是如果是我做的话会考虑直接从成熟的企业那儿接过来,,或者开源威胁情报如open-threat-exchange。
UEBA,即用户实体行为分析,与它常常一起出现的还有SIEM,SoC。先来说下UEBA,主要用于解决以下问题:账号失陷检测,主机失陷检测,数据泄漏检测,内部用户滥用,提供事件调查的上下文等。
技术架构一般如上,可见UEBA在第一步是数据驱动的,需要从产品、日志得到支持,然后是规则驱动,接下来是算法驱动,最后才能尽可能准确刻画出用户画像。再说说UEBA和SIEM的关系,SIEM即安全信息及事件管理,主要是提供一种统一的路径方法来综合处理数据及关联分析。由于数据量及复杂度增加,SIEM的管理能力到了天花板,这才有了UEBA。UEBA 为 SIEM 数据添加了背景信息和分析,并为实体组织的事件提供风险评分,使分析师能够确定最高风险的优先级。随着技术的发展,UEBA又作为子集融合进了态势感知产品。
可视化,其实是为了方便客户了解旗下资产安全情况而做的,将一些复杂的数据图形化使之更容易的感知。可以直观展示企业在全网范围内的资产安全状况、最新待处理威胁、风险事件、安全事件趋势等,并运用安全评分、趋势图、柱状图、分布图等直观图形,实现可视化展示。同时结合平台所收集、加工、分析后的多维数据直观查看结果,方便安全运维人员及时发现、处理威胁,从而帮助客户有效洞察企业所面临的外部威胁和内部脆弱性风险,也极大的提高了安全运维团队的监测、管理、处置安全事件的效率。
这样子处理的初衷是对的,在统计资产时清晰明了,做出的报表也比较好看。但是现在几乎每家的态势感知平台都会加上Biubiu图,这在安全研究员眼里是比较难理解的一件事。
这种打来打去的图估计初学网络安全的人都在Norse Corporation见过,这种图对于引起甲方购买的欲望,了解安全态势确实是足够的,但是应用于态势感知系统我个人认为是有些过了。一来乙方设计的biubiu图受限于资源,蜜罐的部署并不足够支撑来显示实际的网络状况;二来实际中没有足够的证据支撑是无法表明攻击的det,source以及攻击手段的,没有这些,biubiu图也就图一乐而已,并没有实际价值。这一点算是个人的吐槽。
0x06
有了这些技术的支撑,落地的态势感知产品功能都是相近的,最大的差异应该就是销售策略了,一些乙方针对服务器架在自己云上的甲方,态势感知产品是免费的;一些乙方也是免费,不过,要想发挥态势感知的功能必须要与乙方其他的安全产品打通借口,也其实也是变相的捆绑销售;一些乙方就是收费的了,比如我司,去年卖出了“一个小目标”。
好吧,扯远了,回来继续聊落地后的态势感知产品具体有哪些功能。
先将基本都有的功能,包括
态势感知模块:图形化感知,威胁情报,周报日报
分析模块:日志归并,关联分析,图像刻画,攻击链分析,情报关联,预警
传感模块:探针,与其他安全产品的接口
典型的架构如图
采集层:
部署各种采集探针、包括网络入侵探针、异常流量探针、僵木蠕探针、系统漏洞探针、网站安全探针五种类型探针,用于数据采集。
数据处理层:
部署大数据处理引擎,用于采集上来的数据进行处理、存储。
应用分析层:
部署各分析子系统及溯源追踪子系统,用于分析各类安全数据,为上层门户做支撑。
展示层:
部署态势感知呈现门户,用于底层分析结果呈现
此外,一些公司会加入扫描器的功能,包括主机的检测,网站应用的检测等;一些公司还会加入沙盒的功能,用于动态分析。这些功能,我认为是不必要的,如果按照这种开发思路,那其实所有的传统安全产品都能纳入应用分析层的子系统中,态势感知成了大杂烩,未来可能只存在态势感知这一款安全产品了,这当然是不现实的。
0x07
本文系本人胡言乱语,所有陈述与看法与所在公司无关,希望各位大佬手下留情。
标签:分析,攻击,扁鹊,安全,谈谈,感知,态势 来源: https://blog.csdn.net/yalecaltech/article/details/89415977