论文部分内容阅读
摘要:文章针对海量多源异构安全日志分析问题,提出了一种基于模糊场景的关联分析方法。这种方法打破传统安全告警日志关联分析技术中常采用的构建固定攻击场景的方式。它采用聚类算法对多源异构告警日志进行聚合,综合考虑告警事件的数据来源、数量和事件等级,对每部分进行权重的累加,计算出与源IP对应的事件疑似度。文章介绍了模糊场景关联分析方法的架构原理、技术实现,并通过实例加以说明,对所提出的方法进行验证。结果表明该方法和应用是可行和有效的。
关键词:安全日志;多源异构日志;模糊场景关联分析;聚类分析;疑似度
随着网络应用的迅速发展,安全管理问题日益繁杂。企业单位采用各种网络安全设备,如防火墙、入侵检测系统、病毒木马检测系统、行为审计系统、漏洞扫描器等,节点分散,数量品牌多,产品差异大,各安全设备功能相对独立,告警日志多。例如连续运行的入侵检测系统报警量常常达到G数量级。据统计,其中约有99%以上是无关报警。传统对各种告警日志进行单独分析和处理的方法,由于忽略各种类型日志之间的相关性,使其分析结果无法准确地反映网络系统的安全状况,管理员湮没在大量告警中,很难了解系统的安全威胁状况,无法在海量日志中快速定位有价值的安全威胁,也不能及时采取有效的响应措施。因此,针对这种多源异构告警日志的模糊场景关联分析具有重要的实用价值和研究意义。
近年来,国内外研究人员从不同角度对多源异构日志进行研究,并取得一定的成果。Asif-Iqba等提出了一种异构日志事件过滤的方法,利用聚类算法过滤冗余的日志事件,最后对日志事件进行聚合,从而有利于多源日志事件关联分析;Robiah等提出了一种基于异构日志的入侵报警关联分析方法;文献通过对日志文件的交集进行分析来发现用户的恶意行为,从而提高系统的安全性,但该方法只能对防火墙日志与应用系统日志进行分析;文章提出了一种日志关联分析模型,通过对不同来源的日志文件进行采集、过滤、规范化以及关联分析,重构攻击序列。
以上方法为多源异构日志分析工作提供了可行的解决思路,为日志分析模型及算法奠定了良好的基础,但也普遍存在分析数据源不够广泛、分析技术单一等问题。为此,本文提出了一种包含聚合分析、统计分析和关联分析在内的模糊场景关联分析方法,旨在解决从海量信息安全报警日志中快速准确关联分析出最有威胁攻击行为的问题,辅助管理员对事件进行深度分析和准确处理,实现海量异构安全报警的高效关联分析及处置,以减少网络攻击威胁对信息系统所造成的影响。
1系统架构
本文所使用的模糊场景关联分析是对各类安全设备告警日志数据的深入挖掘和分析,该算法应用在某单位安全运维一体化管控系统的核心关联分析引擎中。模糊场景关联分析算法依靠内存数据库的高效率特点,将格式化后的安全告警日志实时保存在内存中进行周期性快速比对分析,依据攻击源和目的IP地址聚合后攻击行为的次数、类型、攻击手段、事件名称等关键要素进行不同分析,基于越多次数、越多类型、越多攻击手段其作为攻击源和攻击目标的疑似度就越高的基本分析原则,为每个攻击来源和目的IP地址进行实时疑似度统计分析,管理员不再根据安全告警原始日志的接收顺序进行分析处置,而是依据攻击行为疑似度高低优先处理最具安全威胁的攻击者或攻击目标IP地址。
2海量异构安全日志关联分析原理
在面对大量安全告警信息进行关联处理中,传统分析引擎依照顺序规则判定安全报警的生成,按照一个既定的告警事件分析顺序依次判断,最终根据提前明确预定义规则生成安全报警。但在实际关联分析过程中,过于教科书样式的分析规则在现实关联分析中,由于受安全产品的部署和检测效能限制,往往无法保证百分之百地提供真实、有效的安全告警让分析引擎正确执行命中。为了实现针对全网真实环境下部署策略各不相同的安全设备所触发安全告警数据的有效分析,本文设计引入模糊化场景分析规则,其具体设计步骤为:以单一日志分析后的来源和目的IP地址作为关键索引,在一个有效的时间窗口中不断聚合告警日志中每次攻击的来源和目的分别相同的IP地址,在时间窗口中不断累积攻击源和攻击目标IP所对应的安全事件的名称、级别、对端IP这些信息成为关联分析的输入条件。最终基于这些输入数据进行关联分析后,形成一个不断变化的疑似度阈值,当阈值达到提前设置的数值时,算法就趋于认同该来源或者目的IP地址有可能是一个真实的攻击来源或者攻击目标。
3整体架构
为了使模糊场景关联分析算法保持高效的实时比对分析,系统架构采用流式数据处理引擎、内存数据库和传统关系型数据库混合构建完成,将1天24小时即86400秒内采集到的海量日志全部放入内存数据库中进行实时比对分析,流式数据处理引擎负责格式化处理各类实时安全告警日志数据,流式引擎处理格式化后的日志数据放入内存数据库,相对传统关系型数据更适合大量数据的匹配分析。所有分析出来的安全告警数据以及对应原始告警数据日志放入关系型数据库中进行保存。
4技术实现
4.1模糊关联场景分析方法
模糊场景关联分析是对安全运维一体化系统中汇集的安全告警原始日志数据的分析和挖掘。该方法主要是通过模糊关联分析算法,对当前和历史的安全告警和日志数据的计算,发现系统中告警威胁的攻击者和被攻击者疑似度(疑似度的值为0~1之间,用来表示攻击者和被攻击者的疑似程度,越接近1表明攻击者和被攻击者的确定程度越大)。
通过对安全告警产生过程的深入分析,认为有4种安全告警对于疑似度的计算可以产生不同影响。
第1种:未符合聚合策略被忽略的安全告警。由于某些高级持续性威胁(APT)的告警会有意识地调整攻击频率,系统中单一的聚合策略并不能生成告警。
第2种:已处理生成安全事件的安全告警。对于己生成安全事件的告警,这些攻击源和攻击目标是管理员需要持续关注的。
第3种:管理员手动操作忽略的安全告警。由于管理员并不能轻松根据上报的安全告警分析出它们之间的关联关系,所以往往对这些告警采用忽略处理,进而错过彻底发现攻击的最佳时机。 第4种:系统中状态为未处理的安全告警。系统中未处理的安全告警是管理员最关注的。
以上是模糊场景关联分析方法的四大数据来源(见图1)。
对于每一种安全告警中都存在着攻击源和攻击目标,在安全告警事件中,源IP即攻击源,目的IP即攻击目标。模糊场景关联分析方法根据4个数据源计算出每个源IP和目的IP的疑似度(见图2)。
通过对模糊场景关联分析的数据源的分析,每种数据源都是由安全告警组成,每个安全告警又是由多个原始的告警聚合产生,对于安全告警的聚合数量、告警等级是直接影响计算疑似度的2个重要参数(见图3)。
4.2模糊场景算法组成
模糊场景关联分析方法中有4个数据来源、2个维度和2个参数。模糊场景关联分析主要是攻击源和攻击目标疑似度的计算模型(见图4)。
由于4个数据源产生的安全告警的影响是不同的,己处理生成安全事件的安全告警最高,系统中状态为未处理的安全告警次之,由于未符合聚合策略被忽略的安全告警和管理员手动忽略的安全告警均属于忽略状态的告警,所以此类告警影响最低。
其对应在计算方法中的权值也是依次降低。影响划分如下:
己处理生成安全事件的安全告警权重>系统中状态为未处理的安全告警权重>未符合聚合策略被忽略的安全告警和系统运维人员手动忽略的安全告警权重。
数据源的权重Ts范围为1~100,4种数据源的权重如表1所示(表中数据为假设数据)。
对于模糊场景关联分析方法中告警数量,每种数据源提供的数量是不同的,为了避免数据量对计算结果误导性影响,告警数量的权重采用非线性的计算方式获得,具体计算公式如下所示:
Tc=a*th(X/Fn)
Tc表示报警数量的权重,x表示告警数量。a是控制权重的变化趋势,a值越大表明_rc的值越大。th()为双曲正切函数,使用双曲正切函数能保证数量的大小变化对权重值影响不成比例。Fn为调整系数,是一个常量值,更能符合Tc的变化趋势。
模糊场景关联分析方法告警等级权重Td也是计算方法中重要的参数,安全告警一共分为3个等级:高、中、低。告警等级的权重范围为1~10,由于低等级的安全告警对于疑似度的影响较小,系统默认定义低级别安全报警的权值为1。其中安全告警等级的权重如表2所示(表中高中级数据为假设数据)。
事件疑似度是由数据源种类、安全告警数量和安全报警等级决定的,具体计算公式如下所示:
其中,DoubtC表示源IP(或目的IP)为攻击源(或攻击目的)的疑似度。n表示时间范围内参加计算的安全报警数量。Ts表示每种数据源的权重。Tc表示通过安全告警聚合的数量计算出的数量权重。Td代表安全告警等级的权重。Fa为疑似度调整系数,是一个常量值,Fa的设置是将疑似度作整体调整的人性化设计,更能符合用户对于疑似度的感念意识。疑似度计算使用双曲正切函数y=th(X)=(e∧x-e∧(-X))/(e∧x+e∧、(-x)),如图5所示,在双曲正切函数中,不论数值有多大(如:疑似度原值可以是无限大),最终计算出的结果都是在0~1之间的,而其他函数则没有此性质。疑似度计算公式中利用双曲正切函数的分值限制将疑似度值控制在0~100%之间。
模糊场景关联分析算法实例(此数据为测试算法数据):
(1)时间范围10分钟,取源IP为192.168.10.1的10条数据为例。
(2)数量权重计算公式中的Fn值为200,a系数值为10。
(3)安全报警等级权值高中低分别为:Td=6,Td=4,Td=1。
(4)疑似度计算公式中的Fa值为1000。
具体如表3所示。
Doubtc=th(9982.400/1000)=0.7609
则时间范围10分钟,源IP;为192.168.10.1的攻击者疑似度为76.09%。
5应用效果
模糊场景关联分析算法作为安全运维一体化管控系统的核心日志分析处置功能引擎,已经成功部署在某单位并在安全日志关联分析处置中发挥了实际功效价值。该引擎自从上线后,平均每天关联分析接近370万条不同厂家品牌规格的安全日志数据,通过对安全日志分析处置,每天可以稳定针对20~30个重点攻击源和攻击目标IP地址进行高威胁疑似度预警,及时通知管理员进行研判分析处置。管理员可以直接在系统界面中查看相关疑似度统计分析数据以及对应的原始日志主数据,进行运维流程处理。模糊场景关联分析算法应用后,日常安全运维人员不必每天再面对大量滚动更新的安全日志而束手无策,系统成为安全运维团队日常工作的重要支撑工具。
6结语
综上所述,传统安全告警日志关联分析技术中经常采用构建固定攻击场景的方式进行关联分析,为攻击行为建立严格的发展顺序,只有按照场景规定的步骤进行的告警日志才能够被检测分析。这种明确的场景规则存在较大的局限性,在实际应用中一方面攻击场景不可能全部枚举出来,另一方面攻击行为隐蔽性越来越强,攻击者为了绕过安全设备的防守,采取各种各样的方式,攻击步骤不断变化,一旦攻击步骤变了,而监控系统仍然按照原先设定的场景进行匹配,则此次关联分析对于攻击的识别是失败的。本文提出的安全告警日志模糊场景关联分析的技术架构,跳出了传统分析规则的局限,不再针对一系列攻击行为进行预先场景描述,而是综合考虑告警事件的数据来源、数量和事件等级,对每部分进行权重的累加,最终得到某个源IP(目的IP)是攻击威胁(被攻击威胁对象)的疑似度。该规则更加简单易用,无需频繁升级调整,同时也更加符合实际工作中安全告警日志数据的结构特点,增强了安全运维系统针对大型网络中各类安全攻击威胁预警的及时性和准确性。
关键词:安全日志;多源异构日志;模糊场景关联分析;聚类分析;疑似度
随着网络应用的迅速发展,安全管理问题日益繁杂。企业单位采用各种网络安全设备,如防火墙、入侵检测系统、病毒木马检测系统、行为审计系统、漏洞扫描器等,节点分散,数量品牌多,产品差异大,各安全设备功能相对独立,告警日志多。例如连续运行的入侵检测系统报警量常常达到G数量级。据统计,其中约有99%以上是无关报警。传统对各种告警日志进行单独分析和处理的方法,由于忽略各种类型日志之间的相关性,使其分析结果无法准确地反映网络系统的安全状况,管理员湮没在大量告警中,很难了解系统的安全威胁状况,无法在海量日志中快速定位有价值的安全威胁,也不能及时采取有效的响应措施。因此,针对这种多源异构告警日志的模糊场景关联分析具有重要的实用价值和研究意义。
近年来,国内外研究人员从不同角度对多源异构日志进行研究,并取得一定的成果。Asif-Iqba等提出了一种异构日志事件过滤的方法,利用聚类算法过滤冗余的日志事件,最后对日志事件进行聚合,从而有利于多源日志事件关联分析;Robiah等提出了一种基于异构日志的入侵报警关联分析方法;文献通过对日志文件的交集进行分析来发现用户的恶意行为,从而提高系统的安全性,但该方法只能对防火墙日志与应用系统日志进行分析;文章提出了一种日志关联分析模型,通过对不同来源的日志文件进行采集、过滤、规范化以及关联分析,重构攻击序列。
以上方法为多源异构日志分析工作提供了可行的解决思路,为日志分析模型及算法奠定了良好的基础,但也普遍存在分析数据源不够广泛、分析技术单一等问题。为此,本文提出了一种包含聚合分析、统计分析和关联分析在内的模糊场景关联分析方法,旨在解决从海量信息安全报警日志中快速准确关联分析出最有威胁攻击行为的问题,辅助管理员对事件进行深度分析和准确处理,实现海量异构安全报警的高效关联分析及处置,以减少网络攻击威胁对信息系统所造成的影响。
1系统架构
本文所使用的模糊场景关联分析是对各类安全设备告警日志数据的深入挖掘和分析,该算法应用在某单位安全运维一体化管控系统的核心关联分析引擎中。模糊场景关联分析算法依靠内存数据库的高效率特点,将格式化后的安全告警日志实时保存在内存中进行周期性快速比对分析,依据攻击源和目的IP地址聚合后攻击行为的次数、类型、攻击手段、事件名称等关键要素进行不同分析,基于越多次数、越多类型、越多攻击手段其作为攻击源和攻击目标的疑似度就越高的基本分析原则,为每个攻击来源和目的IP地址进行实时疑似度统计分析,管理员不再根据安全告警原始日志的接收顺序进行分析处置,而是依据攻击行为疑似度高低优先处理最具安全威胁的攻击者或攻击目标IP地址。
2海量异构安全日志关联分析原理
在面对大量安全告警信息进行关联处理中,传统分析引擎依照顺序规则判定安全报警的生成,按照一个既定的告警事件分析顺序依次判断,最终根据提前明确预定义规则生成安全报警。但在实际关联分析过程中,过于教科书样式的分析规则在现实关联分析中,由于受安全产品的部署和检测效能限制,往往无法保证百分之百地提供真实、有效的安全告警让分析引擎正确执行命中。为了实现针对全网真实环境下部署策略各不相同的安全设备所触发安全告警数据的有效分析,本文设计引入模糊化场景分析规则,其具体设计步骤为:以单一日志分析后的来源和目的IP地址作为关键索引,在一个有效的时间窗口中不断聚合告警日志中每次攻击的来源和目的分别相同的IP地址,在时间窗口中不断累积攻击源和攻击目标IP所对应的安全事件的名称、级别、对端IP这些信息成为关联分析的输入条件。最终基于这些输入数据进行关联分析后,形成一个不断变化的疑似度阈值,当阈值达到提前设置的数值时,算法就趋于认同该来源或者目的IP地址有可能是一个真实的攻击来源或者攻击目标。
3整体架构
为了使模糊场景关联分析算法保持高效的实时比对分析,系统架构采用流式数据处理引擎、内存数据库和传统关系型数据库混合构建完成,将1天24小时即86400秒内采集到的海量日志全部放入内存数据库中进行实时比对分析,流式数据处理引擎负责格式化处理各类实时安全告警日志数据,流式引擎处理格式化后的日志数据放入内存数据库,相对传统关系型数据更适合大量数据的匹配分析。所有分析出来的安全告警数据以及对应原始告警数据日志放入关系型数据库中进行保存。
4技术实现
4.1模糊关联场景分析方法
模糊场景关联分析是对安全运维一体化系统中汇集的安全告警原始日志数据的分析和挖掘。该方法主要是通过模糊关联分析算法,对当前和历史的安全告警和日志数据的计算,发现系统中告警威胁的攻击者和被攻击者疑似度(疑似度的值为0~1之间,用来表示攻击者和被攻击者的疑似程度,越接近1表明攻击者和被攻击者的确定程度越大)。
通过对安全告警产生过程的深入分析,认为有4种安全告警对于疑似度的计算可以产生不同影响。
第1种:未符合聚合策略被忽略的安全告警。由于某些高级持续性威胁(APT)的告警会有意识地调整攻击频率,系统中单一的聚合策略并不能生成告警。
第2种:已处理生成安全事件的安全告警。对于己生成安全事件的告警,这些攻击源和攻击目标是管理员需要持续关注的。
第3种:管理员手动操作忽略的安全告警。由于管理员并不能轻松根据上报的安全告警分析出它们之间的关联关系,所以往往对这些告警采用忽略处理,进而错过彻底发现攻击的最佳时机。 第4种:系统中状态为未处理的安全告警。系统中未处理的安全告警是管理员最关注的。
以上是模糊场景关联分析方法的四大数据来源(见图1)。
对于每一种安全告警中都存在着攻击源和攻击目标,在安全告警事件中,源IP即攻击源,目的IP即攻击目标。模糊场景关联分析方法根据4个数据源计算出每个源IP和目的IP的疑似度(见图2)。
通过对模糊场景关联分析的数据源的分析,每种数据源都是由安全告警组成,每个安全告警又是由多个原始的告警聚合产生,对于安全告警的聚合数量、告警等级是直接影响计算疑似度的2个重要参数(见图3)。
4.2模糊场景算法组成
模糊场景关联分析方法中有4个数据来源、2个维度和2个参数。模糊场景关联分析主要是攻击源和攻击目标疑似度的计算模型(见图4)。
由于4个数据源产生的安全告警的影响是不同的,己处理生成安全事件的安全告警最高,系统中状态为未处理的安全告警次之,由于未符合聚合策略被忽略的安全告警和管理员手动忽略的安全告警均属于忽略状态的告警,所以此类告警影响最低。
其对应在计算方法中的权值也是依次降低。影响划分如下:
己处理生成安全事件的安全告警权重>系统中状态为未处理的安全告警权重>未符合聚合策略被忽略的安全告警和系统运维人员手动忽略的安全告警权重。
数据源的权重Ts范围为1~100,4种数据源的权重如表1所示(表中数据为假设数据)。
对于模糊场景关联分析方法中告警数量,每种数据源提供的数量是不同的,为了避免数据量对计算结果误导性影响,告警数量的权重采用非线性的计算方式获得,具体计算公式如下所示:
Tc=a*th(X/Fn)
Tc表示报警数量的权重,x表示告警数量。a是控制权重的变化趋势,a值越大表明_rc的值越大。th()为双曲正切函数,使用双曲正切函数能保证数量的大小变化对权重值影响不成比例。Fn为调整系数,是一个常量值,更能符合Tc的变化趋势。
模糊场景关联分析方法告警等级权重Td也是计算方法中重要的参数,安全告警一共分为3个等级:高、中、低。告警等级的权重范围为1~10,由于低等级的安全告警对于疑似度的影响较小,系统默认定义低级别安全报警的权值为1。其中安全告警等级的权重如表2所示(表中高中级数据为假设数据)。
事件疑似度是由数据源种类、安全告警数量和安全报警等级决定的,具体计算公式如下所示:
其中,DoubtC表示源IP(或目的IP)为攻击源(或攻击目的)的疑似度。n表示时间范围内参加计算的安全报警数量。Ts表示每种数据源的权重。Tc表示通过安全告警聚合的数量计算出的数量权重。Td代表安全告警等级的权重。Fa为疑似度调整系数,是一个常量值,Fa的设置是将疑似度作整体调整的人性化设计,更能符合用户对于疑似度的感念意识。疑似度计算使用双曲正切函数y=th(X)=(e∧x-e∧(-X))/(e∧x+e∧、(-x)),如图5所示,在双曲正切函数中,不论数值有多大(如:疑似度原值可以是无限大),最终计算出的结果都是在0~1之间的,而其他函数则没有此性质。疑似度计算公式中利用双曲正切函数的分值限制将疑似度值控制在0~100%之间。
模糊场景关联分析算法实例(此数据为测试算法数据):
(1)时间范围10分钟,取源IP为192.168.10.1的10条数据为例。
(2)数量权重计算公式中的Fn值为200,a系数值为10。
(3)安全报警等级权值高中低分别为:Td=6,Td=4,Td=1。
(4)疑似度计算公式中的Fa值为1000。
具体如表3所示。
Doubtc=th(9982.400/1000)=0.7609
则时间范围10分钟,源IP;为192.168.10.1的攻击者疑似度为76.09%。
5应用效果
模糊场景关联分析算法作为安全运维一体化管控系统的核心日志分析处置功能引擎,已经成功部署在某单位并在安全日志关联分析处置中发挥了实际功效价值。该引擎自从上线后,平均每天关联分析接近370万条不同厂家品牌规格的安全日志数据,通过对安全日志分析处置,每天可以稳定针对20~30个重点攻击源和攻击目标IP地址进行高威胁疑似度预警,及时通知管理员进行研判分析处置。管理员可以直接在系统界面中查看相关疑似度统计分析数据以及对应的原始日志主数据,进行运维流程处理。模糊场景关联分析算法应用后,日常安全运维人员不必每天再面对大量滚动更新的安全日志而束手无策,系统成为安全运维团队日常工作的重要支撑工具。
6结语
综上所述,传统安全告警日志关联分析技术中经常采用构建固定攻击场景的方式进行关联分析,为攻击行为建立严格的发展顺序,只有按照场景规定的步骤进行的告警日志才能够被检测分析。这种明确的场景规则存在较大的局限性,在实际应用中一方面攻击场景不可能全部枚举出来,另一方面攻击行为隐蔽性越来越强,攻击者为了绕过安全设备的防守,采取各种各样的方式,攻击步骤不断变化,一旦攻击步骤变了,而监控系统仍然按照原先设定的场景进行匹配,则此次关联分析对于攻击的识别是失败的。本文提出的安全告警日志模糊场景关联分析的技术架构,跳出了传统分析规则的局限,不再针对一系列攻击行为进行预先场景描述,而是综合考虑告警事件的数据来源、数量和事件等级,对每部分进行权重的累加,最终得到某个源IP(目的IP)是攻击威胁(被攻击威胁对象)的疑似度。该规则更加简单易用,无需频繁升级调整,同时也更加符合实际工作中安全告警日志数据的结构特点,增强了安全运维系统针对大型网络中各类安全攻击威胁预警的及时性和准确性。