引言linux
在不少安全分析类产品建设的过程当中都会涉及到关联分析,好比日志分析,soc,态势感知,风控等产品。关联分析能够认为是这类产品中最核心的能力之一。这个东西从名字上看就知道,千人千面,每一个人的想法和理解都不同。不少甲方都会提关联分析,但你要在细问要作什么样的关联分析,估计大多数甲方都不太能详细说出来,不少乙方对此也是藏着掖着,可能也是核心机密不肯意细说。下面就来聊一下我对关联分析模型的一点思考。web
1、概述算法
有不少公司在本身的产品介绍中说本身的产品有多少种内置规则等等,仔细分析就会发现不少是一个模型出来的,好比主机密码猜想,数据库密码猜想,网络设备密码猜想等,这些规则背后能够理解为一个模型。因此评价一个产品分析规则好坏的关键点我认为不全是内置多少种有效的规则,对关联规则模型支持的多少也能够做为一个重要指标,正如道生一,一辈子二,二生三,三生万物。固然分析规则的分析能力还要依托于日志解析的准确度和广度,日志解析的越准确,广度越广,对分析的支撑能力就越强。数据库
关联分析模型从大的分类看大概有如下 5种:安全
一、基于规则的关联分析服务器
二、基于统计的关联分析网络
三、基于威胁情报的关联分析架构
四、基于情境的关联分析ssh
五、基于大数据的关联分析机器学习
这些模型大概是业内提的最多的,但仔细分析,其实里面的内容并非彻底在一个维度上,里面还会有一些些交叉和关联。下面就对这5种常见的关联分析方法进行介绍:
2、基于规则的关联分析
基于规则的关联分析是目前是最经常使用的一种关联分析模型,这种关联分析模型是指按平台预先内置关联规则,或者用户自定义维护的关联规则对安全事件进行分析。平台接收到通过范式化的安全事件之后,经过事件维度与告警规则进行匹配,一旦匹配到符合条件的规则,规则就会被触发。在规则设定的时间窗口内,平台会将多条成功匹配规则的安全事件进行关联,并按规则设定进行告警。
关联规则主要模拟***者***的行为,将平台采集的范式化后的日志,经过有效的字段组合,进行规则模型匹配分析,基于规则的关联分析主要针对于已知安全事件的分析,还要基于企业实际网络结构,业务场景进行调整,知足企业实际环境的需求。
基于规则的关联分析的特色是准确,可理解,只要规则没有问题得出的结论就是没有问题的,但规则如何去作,这就是规则模型的内容。下面就介绍下一些经常使用的规则模型:
2.1单条日志关联规则
单条关联分析模型是基于规则的模型中最简单的一种方式,它的主要思想就是根据一条日志中的内容进行分析,好比linux下一条经常使用的登陆日志:
May 22 17:13:01 10-9-83-151 sshd[17422]: Accepted password for secisland from 129.74.226.122 port 64485 ssh2
从这个日志中就有不少的信息,好比直接时间,主机名,进程名,事件类型,用户,源ip,端口;间接信息包括资产信息,帐号信息,源ip地理信信息等。当这些丰富的信息解析出来后。咱们能够不少的分析模型:
·非上班时间登陆:
这个就是说在非上班时间进行了登陆行为,主要判断标准就是时间和登陆成功事件。
·非上班地点登陆:
这个就是说在非上班地点进行了登陆行为,主要判断标准就是登陆IP和登陆成功事件。这个场景在不少风控中也会应用,好比出差登陆QQ邮箱,QQ可能会发个异地登陆提醒,若是在网上第一次用信用卡进行美金支付,客服会打电话确认这个操做是否是你本人所为等。
·绕堡垒机登陆:
这个就是说在不在堡垒机上进行了登陆行为,主要判断标准就是登陆IP是不是堡垒机IP和登陆成功事件。
·越权登陆:
这个根据业务逻辑好比某些帐号不能登陆某些服务器。主要判断标准就是登陆帐号,登陆目标IP和登陆成功事件。
·国外登陆:
这个就是说在登陆的IP地址不是国内的IP进行了登陆行为,主要判断标准就是登陆IP是不是国内IP和登陆成功事件。
经过上面实例能够发现根据一条日志结合事件类型和业务等能够分析出很是多的告警行为。
2.2 事件数量告警
在不少***场景中,仅靠一条事件是不能发现***行为的,好比密码猜想行为,当有一条密码登陆事件发生的时候,咱们不能说这个是密码猜想行为,只有在一个短期内发生了超过阈值数量的登陆失败行为时,咱们才能初步界定为此次行为是密码猜想行为。这种行为就是事件数量告警。这种模型主要有几个部分:
·时间维度,就是一段时间内;
·阈值维度,达到阈值的数量;
·条件维度,知足某些条件。
好比刚才说的密码猜想,在三分钟内,登陆失败的阈值达到6次以上,咱们能够认为是一个密码猜想***行为。
固然还有不少这种模型的相似规则,好比帐号猜想,病毒爆发,CC***等行为。
常常有些甲方提出来的跨设备的关联分析其实也能够归于这种模型,好比同一个IP在短期内有多个产品发生了包含这个IP的日志。
文章属于赛克蓝德原创,如需转载请完整保留做者公司信息。
2.3 多值事件数量告警
在有些状况下,事件数量告警是不能知足某些***场景,好比端口扫描,主机扫描等行为,这种行为的特性也是经过多条事件来判断,但仅仅经过数量是没有办法肯定是不是***。好比端口扫描,你不能说短期端口访问了100次就算是扫描行为,可是若是短期不一样端口访问了100一次以上,大几率应该是一个端口扫描行为。这种模型主要有几个部分:
·时间维度,就是一段时间内;
·阈值维度,达到阈值的数量;
·不一样维度,类型相同但内容是不相同的;
·条件维度,知足某些条件。
经过这些内容进行分析组合,能够分析出更多的场景,好比主机扫描就是1分钟同一个源IP访问不一样主机的同一个端口数量超过100个就能够初步判断为主机扫描;好比分布式帐号猜想,同一个帐号登陆失败的源IP地址在一分钟内出现了20个不同的能够判断为分布式帐号猜想等等。
2.4 时序告警
这是一种比以前更复杂模型的一种告警模型,这种模型在不少更复杂的场景中用到,好比:非上班时间登陆ftp服务器,上传了一个脚本,而后下载了敏感文件行为。这种状况从大几率上看应该是一次违规行为,固然条件和内容能够演变。这种行为具备明显的特征就是时间顺序。好比“杀伤链”模型的六个阶段“发现-定位-跟踪-瞄准-打击-达成目标”也具备时间顺序的特征,只是这种时间序列的来源是告警而不是原始的事件。
3、基于统计的关联分析
基于统计模型的关联规则和以前的模型有些不太同样,有的公司用动态基线、基于行为的分析等的叫法,本质上应该均可以归于这一类模型。这种模型在用户行为异常分析中也大量使用(用户异常行为分析目前也有不少用机器学习算法来实现的)。
具体来讲就是阈值没有办法提早知道,须要经过计算前面的一段时间获得阈值,而后根据阈值进行计算偏离的方法。好比流量异常模型,不少的客户不必定知道平时的流量究竟是多少才是正常的,这个时候就须要进行动态计算,好比今天9点到10的流量比前一周9点到10点流量的平均值大80%。这个状况就能够理解为流量异常模型。DDOS就是一种经常使用的统计异常模型:
在异常行为分析中能够大量使用这种模型,好比访问异常,操做异常,下载异常等。
还有种比较特殊的统计关联分析是低频行为分析,低频分析本质上也是一种统计行为分析,只是这种统计指标平时比较少,有可能在大量的数据中被淹没。这种状况下选择指标就比较重要。
4、基于威胁情报的关联分析
基于威胁情报数据的关联分析,是企业安全管理平台将来的主要发展趋势,它能够大大提高安全事件分析效率和对威胁行为的检测能力和响应速度。
情报数据包括IP指纹、web指纹、IP信息、域名信息、漏洞库、样本库、IP信誉、域名信誉、URL信誉、文件信誉、C&C信誉等。
一般状况下,企业安全管理平台与部署在云端的威胁情报平台互联或者把第三方情报数据按期导入到内网。通过安全管理平台的关联分析引擎生成的本地安全告警,与获得的威胁情报数据进行关联,经过对IP信誉、域名信誉、URL信誉、文件信誉、C&C信誉等多个维度的匹配,分析出安全告警的可信程度,过滤掉告警中的噪音事件,从而增长了本地安全告警的精准度,使得企业安全管理人员能够迅速定位威胁来源和相关联的资产和业务,并及时经过工单和处置流程进行快速响应;同时,利用威胁情报能够对***者进行深刻分析和溯源取证。
从模型来看,基于情报的关联分析并非一种新的模型,它能够算是一种新的数据维度,好比之前没有没有情报的时候并不知道一个IP是不是恶意IP,一个URL是不是恶意URL,当有了情报后,能够拿这个数据和状况数据对比来肯定是不是恶意行为。这种模型能够理解为单条事件模型的一个扩展,好比源IP使用就是判断源IP维度是否在情报的黑名单内,sourceIP in(情报)。
5、基于情境的关联分析
基于情境的关联分析是指将安全事件与当前的实际运行的环境进行关联,根据更多业务信息,环境信息进行相关性分析,识别安全威胁。好比基于资产的关联,根据事件中的IP地址与资产的信息进行关联;好比基于漏洞的关联,将安全事件与该事件所针对的目标资产当前具备的漏洞信息进行关联;基于其余告警的关联,将安全事件与该事件所针对的目标资产当前发生的其余告警信息进行关联;基于拓扑的关联,结合网络拓扑中网络区域内的告警进行关联。
从模型来看,基于情境的关联分析也不是一种新的模型,它也能够算是一种新的数据维度的分析,好比在日志范式化中增长资产信息,漏洞信息,网络结构信息等。和其余高级关联能够归于事件数量告警的一个升级,只是事件告警的来源是事件,这个告警的来源是已经产生的告警,这个模型依然能够归于事件数量告警。总体上看,情境分析的模型基本上仍是以前的模型,但分析的难度仍是比较大的,由于这些情景不少都是动态变化的,目前大多数分析模型仍是基于已经范式化后的事件,当这些情景发生变化或者事前没有进行范式化补充这些信息的时候。这种状况会大大增长分析的难度。
6、基于大数据的关联分析
目前咱们已经进入了大数据时代。人类的生产生活天天都在产生大量的数据,而且产生的速度愈来愈快。而安全事件的数量也是相似的,天天产生的数据愈来愈多。其实大数据早就存在,只是一直没有足够的基础架构和技术来对这些数据进行有价值的挖据。随着科技的不断进步,对大数据的处理分析能力也愈来愈强。
从模型来看,基于大数据的关联分析也不是一种新的模型,它主要的特色是利用了大数据技术去处理分析数据,好比存储,检索,聚合等。利用大数据平台的能力能够分析之前因为数据太大不能分析的场景。但在大数据分析领域也有不少数据关联性分析算法:相关性分析、回归分析、交叉表卡方分析等,但这些模型在安全分析的过程有多大的做用和效果,目前没有太大的研究,目前我这边仍是用传统的分析模型利用大数据架构的能力进行安全分析。
7、小结
前面介绍的是目前传统的一些分析模型方法,能够做为对安全分析产品中关联分析是否灵活的一个参考。固然安全分析的前提是日志解析的准确,日志解析的准确也是一个很是复杂的内容,这块也分预处理和后处理等内容,后面有时间也会介绍下此部分的内容。安全***对抗一直在不停的进行演变,目前也出现了一些新的模型,好比基于预测模型的关联分析,基于机器学习的分析等,这部分目前尚未太多的心得。关联分析模型自己是一个比较复杂的内容,我尽可能保证内容观点正确,但本人毕竟才学疏浅,文中如有不足之处欢迎你们批评指正。
备注:文章属于赛克蓝德原创,赛克蓝德是专一于数据分析、安全分析、分析服务的提供商。如需转载请完整保留做者公司信息。