【技术实现步骤摘要】
一种基于系统审计日志的HIDS告警溯源方法
[0001]本专利技术涉及主机入侵行为分析领域,更具体的,涉及一种基于系统审计日志的HIDS告警溯源方法。
技术介绍
[0002]以OSSEC为代表的主机入侵检测系统(简称HIDS)常常用于对主机行为的监控。这类HIDS能够进行主机日志分析、文件完整性检测以及rootkit检测等。本质上OSSEC等HIDS是根据预定义的规则,对输入的各类日志或HIDS定期执行的检测结果进行匹配,如果规则匹配到了相应的内容,则会产生对应的告警信息。而规则可以为告警设置风险等级,风险等级越高的告警意味着入侵行为越严重,或者入侵行为发生的可能性越大。
[0003]然而这样产生的告警往往代表了孤立的事件,彼此之间缺少关联信息,提供给分析人员的告警信息价值不高,而且由于低等级告警的规则相对宽松,更容易触发,所以入侵发生时,往往会产生大量告警,既占用系统空间,也会增加分析人员的工作量,即使没有入侵行为,较低的触发条件可能会导致出现很多低风险的误报告警。
[0004]为了缓解这些问题,已有的技术主要是通过将系统审计日志与预先配置的规则进行匹配碰撞,找到入侵点,然后在系统审计日志中对入侵点进行溯源追踪,然后通过一系列的威胁评估方法来降低误报。然而很多方法配置的规则通常仅限于对用于构建因果关系的系统审计日志的匹配碰撞,而基于其他日志来源的告警或者通过HIDS定期执行的检测产生的告警则缺少关注。
技术实现思路
[0005]本专利技术技术问题:为了克服现有技术的不足,提供一种基于 ...
【技术保护点】
【技术特征摘要】
1.一种基于系统审计日志的HIDS告警溯源方法,应用于主机入侵检测告警分析,其特征在于,包括如下步骤:(1)将HIDS告警和系统审计日志处理为包含指定内容的数据格式,得到处理后的全局告警A和全局系统审计日志E;(2)将全局告警A中的每个告警a和全局系统审计日志E中的系统审计事件e进行关联,得到带有告警标记的事件列表matched_list;(3)从所述事件列表matched_list中的事件出发,在全局系统审计日志E中利用因果关系进行向前追踪和向后溯源,得到与告警相关联的事件序列,保存至序列列表seq_list中;(4)结合事件序列中的事件所关联到的告警的信息,根据序列评分机制,为所述事件序列seq_list中的每个序列评分,得到序列评分结果;将序列评分结果超过设定阈值的序列转变为最终告警输出;其中,步骤(1)中所述数据格式包含告警格式和系统审计日志中对应的系统审计事件格式,其中:告警格式包含{id,timestamp,data,rule};id用来索引和标识告警;timestamp代表了告警产生时的时间戳;data则包含告警的具体内容,至少包含data.entity和data.description两部分:data.entity是触发告警的系统实体有关信息,所述系统实体包含文件、网络连接、进程,对于Windows系统,注册表也是一类系统实体;由不同类型系统实体所触发的告警中的data.entity所包含的内容不同,对于文件类型系统实体所触发的告警,data.entity中包含文件的路径信息;对于网络连接类型系统实体触发的告警,data.entity中则包含网络连接的域名或IP、端口信息;对于进程类型系统实体触发的告警,data.entity包含进程ID和进程名信息;在Windows系统中注册表类型系统实体所产生的告警,data.entity包含对应注册表的键和值信息;data.description是对告警内容的描述信息;rule代表该告警相关的规则;所述规则至少包含以下信息{rule.id,rule.type,rule.level},其中rule.id代表规则的唯一标识,用来快速定位规则;rule.type代表该告警对应规则的类型,即实时匹配或定期检测,所述实时匹配代表该规则用于实时匹配系统中最新产生的日志,基于这类规则产生的告警会在系统中发生入侵事件时即刻产生,告警时间与入侵行为发生时间同步,基于这类规则产生的告警也就是实时告警;而所述定期检测的规则则用于匹配HIDS定期执行的检测程序的检测结果,这类规则产生的告警会在HIDS执行定期的检测任务时才产生,告警时间与入侵行为的发生时间不同步,基于这类规则产生的告警也就是定期检测告警;rule.level代表触发该规则的事件风险的高低,所述事件风险代表了该事件为入侵行为的可能性以及发生后会造成的后果严重程度的高低。告警中id,timestamp,以及data和rule的子字段都属于告警的属性;所有处理后的HIDS告警的集合就构成了全局告警A;系统审计事件格式包含{subject,object,timestamp,operation};subhect代表事件发生的主体,即事件中动作的发起方的系统实体;
object代表事件发生的客体,即动作的接收方的系统实体;timestamp代表事件发生的时间戳信息;operation代表主体对客体执行的具体操作,包括进程对文件的读写、进程创建子进程、进程和远程网络连接的信息发送接收,Windows下进程对注册表的读写,以及其他记录到的系统实体之间的操作;所有系统审计事件构成的集合,即为全局系统审计日志E。2.根据权利要求1所述的基于系统审计日志的HIDS告警溯源方法,其特征在于,所述步骤(2)具体包含以下步骤:(21)针对全局告警A中的一个告警a
i
,首先判断a
i
的rule.type字段,如果告警是通过定期检测产生的,则跳转(23),如果是实时告警则继续(22);(22)在全局系统审计日志E中查找时间戳最接近a
i
.timestamp的系统审计事件记为e
j
,如果|e
j
.timestamp
‑
a
i
.timestamp|>Threshold
TS
,就认为匹配失败,即无法找到与a
i
关联的系统审计事件,然后跳转(25),否则跳转(24),Threshold
TS
是一个时间戳关联阈值,时间戳的差值如果不高于该阈值则认为是同一时刻;(23)对于定期检测所产生的告警,由于可能存在的处理不及时导致相同原因多次触发告警,因此需要将这些重复的告警进行合并,即在全局告警A中找到与a
i
重复的告警,并只保留其中一个告警作为a
i
,删去其余重复告警;然后分别选择全局系统审计日志E中的每一个事件作为e
j
,执行(24);(24)判断e
j
.subject或e
j
.object所涉及的系统实体与a
i
.data.entity所对应的系统实体是否为同一系统实体?如是,则认为e
j
与a
i
有关联,将e
j
和a
i
连接,得到e
j
:a
i
,并将其添加到matched_list中,相当于为事件e
j
添加了告警a
i
作为标记;如不是,认为e
j
与a
i
无关;(25)重复执行(21)至(24),直至完成对全局告警A中所有告警的关联尝试,最终得到带有告警标记的事件列表matched_list;所述matched_list保留了所有关联到告警的事件及其关联到的告警信息,...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。