一种多路IDS集成检测方法和装置与流程

专利查询2023-10-21  134


一种多路ids集成检测方法和装置
技术领域
1.本发明一般涉及网络入侵检测领域,并且更具体地,涉及一种多路ids集成检测方法和装置。


背景技术:

2.近几十年来,计算机系统一直在建立、存储、处理和传输过程中不断增加数据量。在此过程中,计算机系统安全运行成为一个核心关键问题,有必要防止未经授权的人侵入计算机和计算机网络。目前,最常用的计算机系统安全工具是反病毒、防火墙、入侵检测、入侵阻断等。近年来,计算机网络安全不断受到学术界和工业界的重视,新的技术和流量监控工具不断涌现以避免未经授权的入侵。入侵可以定义为试图破坏计算机系统和网络资源的完整性、机密性或可用性。入侵检测系统(ids)是一种网络安全产品,旨在监控网络流量、检测安全威胁并发出告警。大多数ids设备是以签名检测技术为核心,这是主流的检测技术。即利用特定的攻击模式匹配来限制入侵。为了使得基于签名的ids设备都能够检出正确的结果,必须要求ids设备的供应商维护所有已知的、完备的签名知识库。然而,在基于签名防御机制的ids设备实施过程中往往存在一些重大的挑战,即误报和漏报问题。对于用户来讲,无论是漏报还是误报都是难以接受的。前者导致用户的网络被攻陷和接管,而用户毫无所知;后者,大量的、频繁的威胁告警干扰系统管理员的正常工作,进而导致用户不信任供应商提供的ids设备。
3.为了降低ids设备的误报率和漏报率,ids设备分析师通常需要手工处理ids设备的威胁事件以确定是准确告警还是误报,进而优化签名知识库。但是,ids设备分析师也仅能够处理误报,对于漏报无能为力。在此过程中,使用单一的ids设备已经成为了障碍。为了同时优化ids误报和漏报,克服单一ids设备的局限性,使用多个不同供应商的ids设备进行集成,每个供应商的ids设备都有专属的、擅长的知识领域签名设计。对于知识领域,可以被定义为网络协议类型、威胁类型等。其中,网络协议类型包括tcp、udp、http、fpt、mysql等;威胁类型包括dos攻击、暴力破解、sql injection、xss、端口扫描等。在专属的、擅长的知识领域,该提供商的ids设备在威胁误报和漏报领域具有较大的优势,能够更为准确的识别恶意流量。
4.然而,使用多个不同供应商的ids设备进行集成可能导致检测结果发生冲突。为了解决此类冲突提出了若干方法,例如多数票算法(mv算法),分析出潜在的误报和漏报,再根据具体流量进行最终的误报和漏报确认。但是,mv算法并没有关注对威胁告警的处理,更没有考虑不同的ids设备擅长的领域知识能力,进而导致检测效率不高。又例如,cwv算法,进一步考虑了每个ids设备的可信度,但进行ids筛选时,仅选取单一特性进行评估,未考虑ids设备的优势多样性。又例如,依据警报之间的差异程度关联聚合来自多种ids 的警报,借此抑制警报泛滥、构建警报航迹,再用d-s 方法提升网络安全态势评估的精准性。该方法为了降低时空复杂度或者对统计样本的要求,引入了很难被满足的约束条件,限制了该方法的适用范围。刘等人将流量数据包属性划分为3个类别,即内容属性、本质属性和流量属
性,先用神经网络分别检测,再用模糊积分融合。又例如,支持在线增量训练的警报融合模型,将初级警报向量映射为表决模式,以缩小统计空间。通过训练统计出各种表决模式在正常或攻击流量下的条件概率分布,依据统计特征的变化即时推断待检测流量的构成情况,使用阈值约束法和贝叶斯推断做出融合决策。上述这两种方法,当训练样本的种类、数量较少时,统计空间非常稀疏;未充分训练不但会导致性能降低,还容易引发相当棘手的拒绝决策问题。
5.为了解决以上挑战,相关专利也提出了一些方案试图缓解或部分解决以上问题。cn108023876b,基于可持续性集成学习的入侵检测方法及入侵检测系统,采用多回归模型的集成学习融合方案,细粒度的分配了在对不同攻击类型检测过程中个体学习器的决策权重,并通过将历史模型的参数和结果用于训练新的模型,提高了检测模型的稳定性并保证了学习过程的可持续性。该发明本质上对利用持续性集成学习技术,提升威胁检测能力,与本技术不是一个研究领域。cn111683048b,一种基于多周期模型stacking的入侵检测系统,通过将历史周期训练得到的模型和当前数据训练得到的模型通过改进的stacking方法集成,能够更为有效地利用多个周期的历史数据,克服因为设备存储空间不足无法缓存所有训练数据所带来的信息损失的问题,使得即使历史的数据已经丢弃,其中的信息也能通过历史训练的模型而在最新的训练中得到体现,从而能够提升入侵检测系统的检测性能。该发明本质上对利用增量学习技术,特别是stacking集成学习技术,提升威胁检测能力,与本技术不是一个研究领域。cn109842614b,基于数据挖掘的网络入侵检测方法,在弱分类器训练阶段,采用改进权值更新方法的adaboost算法进行弱分类器训练,根据各个样本在前t次训练中的加权平均正确率来更新样本权值,抑制了噪声样本权值的无限扩大,令所有样本的权值更新更均衡。在弱分类器组合阶段,提出一种新的弱分类器间相似度度量方式,并基于该相似度度量方式和层次聚类算法进行选择性集成,将相似度超过阈值的弱分类器归入一类,取每类中分类准确率最高的弱分类器组合成强分类器,从而剔除冗余弱分类器,提高了分类速度,减少了计算开销。该发明本质上对利用集成学习技术,特别是adaboost集成学习技术,提升威胁检测能力,与本技术不是一个研究领域。cn100414868c,提出一种大规模分布式网络情况下的入侵检测告警实时融合机制,通过“聚类—合并—关联”三个步骤实现对告警的融合,目标是产生大规模环境下的告警,同时提高单个入侵检测的检测率,降低它们的虚警率,最终为安全管理人员提供简练精确的告警。该发明的面向场景为在一个大型网络中可以配置多个入侵检测系统,每个入侵检测系统负责网络的一部分。而本技术的面向场景为同一个网络位置,利用来自不同供应商的ids设备对流量会话进行集成检测,进而提高威胁的检测效率; cn110868414b,一种基于多投票技术的工控网络入侵检测方法及系统,提供了一种基于多投票技术的工控网络入侵检测方法及系统,该方法包括:获取当前时刻工控网络中各节点的网络数据,将获取的数据输入到网络入侵检测模型中,得第一检测结果;根据第一检测结果将第一网络数据存入相应的缓存区,得标定后第一网络数据;判断各缓存区的数据量是否达到第一设定值;若是,将各缓存区中的数据作为更新数据,根据更新数据对网络入侵检测模型中的参数进行调整,更新网络入侵检测模型,采用更新后的检测模型对下一时刻的网络数据进行检测,网络入侵检测模型中有r个离线ba-elm分类器,将检测结果中出现次数最多的作为最终检测结果,通过本发明的上述方法以实现对工控网络的在线入侵检测,同时提高了检测的实时性和准确性。该发明本质上是一种基于弱分类器
投票的集成学习方法,实现对工控网络的在线入侵检测,同时提高了检测的实时性和准确性,但与本技术不是一个研究领域。可见,上述方法在多路ids集成检测方面做出了一定的贡献,但依然存在一些问题,即多数方法对不同厂商的ids设备检测能力评价过于单一,对于ids设备的筛选算法过于简单,进而导致难以达到降低误报和漏报的目标。


技术实现要素:

6.根据本发明的实施例,提供了一种多路ids集成检测方案。本方案利用较低的时间和计算复杂度减少联合检测的漏报和误报,极大的提高了威胁检测性能,降低了威胁事件基数,极大提高了网络维护人员的工作效率,降低了其工作负担。
7.在本发明的第一方面,提供了一种多路ids集成检测方法。该方法包括:获取并存储实时和离线的可疑流量pcap包;对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据;对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集,并将所述训练数据集进行ids多维度评估,得到ids集合的可信度评估向量;利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,删除所述ids弱势集合,得到候选ids集合;利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合;对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型;对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。
8.进一步地,所述利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,包括:根据ids集合的可信度评估向量,对不同厂家的ids设备进行评估,生成第一ids正向评估数据集,再生成ids负向评估数据集;对所述ids负向评估数据集中的ids负向评估元组建立负向临时表,设置第一消息队列,用于存储相互之间不存在不同厂商ids之间的控制关系的ids负向评估元组;从所述负向临时表中读取ids负向评估元组,若所述第一消息队列为空,则将读取到的ids负向评估元组插入所述第一消息队列中;若所述第一消息队列不为空,则将读取到的ids负向评估元组遍历所述第一消息队列中已有的ids负向评估元组进行控制关系比较,根据比较结果进行出入队;遍历所述负向临时表中的全部ids负向评估元组后,将当前第一消息队列中的ids负向评估元组作为ids弱势集合。
9.进一步地,所述将读取到的ids负向评估元组遍历所述第一消息队列中已有的ids负向评估元组进行控制关系比较,根据比较结果进行出入队,包括:若所述第一消息队列中存在ids负向评估元组对读取到的ids负向评估元组存在控制弱势,则将读取到的ids负向评估元组删除;
若读取到的ids负向评估元组对所述第一消息队列中的ids负向评估元组存在控制弱势,则从所述第一消息队列中删除被读取到的ids负向评估元组控制的ids负向评估元组,将读取到的ids负向评估元组插入所述第一消息队列中;若所述第一消息队列中的ids负向评估元组与读取到的ids负向评估元组之间不存在控制弱势,判断所述第一消息队列是否已满,若所述第一消息队列已满,则将读取到的ids负向评估元组写入另一负向临时表中;若所述第一消息队列未满,则将所述读取到的ids负向评估元组插入所述第一消息队列中;其中,所述控制弱势定义为:给定的一个多维空间的多个ids负向评估元组集合,若存在两个ids负向评估元组,分别表示两个不同厂商的ids负向评估指标值;若第一ids负向评估元组的各个负向评估指标值不小于第二ids负向评估元组的负向评估指标值,且至少存在一个负向评估指标值大于第二ids评估元组的对应负向评估指标值,则所述第一ids负向评估元组对所述第二ids负向评估元组具有控制弱势。
10.进一步地,所述利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合,包括:根据ids集合的可信度评估向量,对所述候选ids集合中不同厂家的ids设备进行评估,生成第二ids正向评估数据集;对所述第二ids正向评估数据集中的ids正向评估元组建立正向临时表,设置第二消息队列,用于存储相互之间不存在不同厂商ids之间的控制关系的ids正向评估元组,且所述第二消息队列初始化为空;从所述正向临时表中读取ids正向评估元组,若所述第二消息队列为空,则将读取到的ids正向评估元组插入所述第二消息队列中;若所述消息队列不为空,则将读取到的ids正向评估元组遍历所述消息队列中已有的ids正向评估元组,进行控制关系比较,根据比较结果进行出入队;遍历所述临时表中的全部ids正向评估元组后,将当前第二消息队列中的ids正向评估元组作为ids权威集合。
11.进一步地,所述将读取到的ids正向评估元组遍历所述消息队列中已有的ids正向评估元组进行控制关系比较,根据比较结果进行出入队,包括:若所述第二消息队列中存在ids正向评估元组对读取到的ids正向评估元组存在控制优势,则将读取到的ids正向评估元组删除;若读取到的ids正向评估元组对所述第二消息队列中的ids正向评估元组存在控制优势,则从所述第二消息队列中删除被读取到的ids正向评估元组控制的ids正向评估元组,将所述读取到的ids正向评估元组插入所述第二消息队列中;若所述第二消息队列中的ids正向评估元组与读取到的ids正向评估元组之间不存在控制优势,判断所述第二消息队列是否已满,若所述第二消息队列已满,则将读取到的ids正向评估元组写入另一正向临时表中;若所述第二消息队列未满,则将所述读取到的ids正向评估元组插入所述第二消息队列中;其中,所述控制优势定义为:给定的一个多维空间的多个ids正向评估元组集合,若存在两个ids正向评估元
组,分别表示两个不同厂商的ids正向评估指标值,若第一ids正向评估元组的各个正向评估指标值不小于第二ids正向评估元组的正向评估指标值,且至少存在一个正向评估指标值大于第二ids正向评估元组的对应正向评估指标值,则所述第一ids正向评估元组对所述第二ids正向评估元组具有控制优势。
12.进一步地,所述对所述候选ids集合和ids权威集合进行权重分配和权重投票,包括:首先,对当前网络流量会话,ids设备的可信度权重进行分配;其中,所述可信度权重为:其中,为网络流量会话的第i个ids设备的可信度权重;为第i个ids对于第个网络流量会话生成的威胁事件;null表示未生成威胁事件;为第i个ids设备在网络协议和威胁类别约束下的检测精确度,其中为网络协议,为威胁类别;为第i个ids设备在网络协议约束下的检测精确度;为第i个ids设备在网络协议的约束下的检测漏报率,其中,表示合法流量,表示第i个ids设备有关网络协议m的威胁事件总数为零;其次,通过计算网络流量会话为恶意行为的概率进行权重投票;所述网络流量会话为恶意行为的概率为:其中,为网络流量会话为恶意行为的概率;为ids权威集合的数量;最后,对网络流量会话的合法性进行判定,若不小于威胁阈值,则网络流量会话被判定为具有恶意行为的流量;若小于威胁阈值且不小于合法阈值,则网络流量会话被判定为合法流量;若小于合法阈值,则网络流量会话被判定为未知流量。
13.进一步地,所述ids集合的可信度评估向量包括攻击流量检出率、正常流量检出率、攻击流量检测准确率、流量识别正确率、攻击流量漏报率、流量识别误报率、f分数、ids设备在网络协议和威胁类别约束下的检测精确度、ids设备在网络协议约束下的检测精确度以及ids网络协议的约束下的检测漏报率中的一种或几种。
14.进一步地,所述通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件,包括:使用多个不同厂家的ids设备生成的网络协议事件进行普通多数表决,识别网络协议类型以及威胁事件类型;将识别出的网络协议类型以及威胁事件类型作为所述多路ids设备集成模型的输入,计算网络流量为恶意行为以及威胁事件的概率,输出威胁事件。
15.在本发明的第二方面,提供了一种多路ids集成检测装置。该装置包括:获取模块,用于获取并存储实时和离线的可疑流量pcap包;威胁检测模块,用于对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据;分析评估模块,用于对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集,并将所述训练数据集进行ids多维度评估,得到ids集合的可信度评估向量;筛选模块,用于利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,删除所述ids弱势集合,得到候选ids集合;还利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合;权重选择模块,用于对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型;集成检测模块,用于对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。
16.在本发明的第三方面,提供了一种电子设备。该电子设备至少一个处理器;以及与所述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明第一方面的方法。
附图说明
17.结合附图并参考以下详细说明,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:图1示出了根据本发明的实施例的多路ids集成检测方法的流程图;图2示出了根据本发明的实施例的控制弱势示意图;图3示出了根据本发明的实施例的控制优势示意图;图4示出了根据本发明的实施例的多路ids集成检测方法的数据处理示意图;图5示出了根据本发明的实施例的多路ids集成检测装置的方框图;图6示出了能够实施本发明的实施例的示例性电子设备的方框图;其中,600为电子设备、601为cpu、602为rom、603为ram、604为总线、605为i/o接口、606为输入单元、607为输出单元、608为存储单元、609为通信单元。
具体实施方式
18.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本发明保护的范围。
19.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
20.图1示出了本发明实施例的多路ids集成检测方法的流程图。
21.该方法包括:s101、获取并存储实时和离线的可疑流量pcap包。
22.利用流量采集组件获取多种来源的实时和离线威胁流量pcap包,并利用流量存储组件进行pcap存储。可疑流量泛指由各种安全设备告警且具备网络流量pcap包的数据。
23.作为本发明的一种实施例,对可以流量pcap的获取可以通过流量检测设备的标注以及威胁流量生成工具进行获取。威胁流量生成工具描述如下:(1)暴力破解,流量生成工具可以使用patator;(2)dos攻击,流量生成工具可以使用hulk、goldeneye、slowloris、slowhttptest、heartleech;(3)web攻击,流量生成工具可以使用burp suite、dirmap、vulmap等;(4)端口扫描,流量生成工具可以使用nmap、unicornscan、zenmap、nast、knocker、low orbit ion canon。
24.此外,pcap流量存储需要专用的全流量存储设备完成,该设备具备流量会话存储、流量会话查询和流量会话回放等能力。
25.s102、对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据。
26.流量会话回放是提供对于流量pcap文件按照预定义的速率进行回放,而多路ids设备,即多路入侵检测系统,特指来自多个不同供应商的ids设备部署在网络的同一个位置,接收同样一份流量。
27.s103、对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集。
28.作为本发明的一种实施例,如图6所示,在多路ids设备生成告警数据后,对所述告警数据进行预处理。所述预处理可以包括格式归一化处理、告警类型归一化处理、描述归一化处理等。通过预处理后的告警数据在格式、告警类型以及描述方式上都进行了统一。
29.进一步地,如图6所示,对预处理后的告警数据进行tp/tn根因分析及fp/fn根因分析,包括:对于同一份回放流量,如果大部分ids设备未生成威胁事件,而小部分生成了威胁事件,则判定为这小部分ids设备产生了潜在的误报。相反,若大部分ids设备生成了威胁事件,而小部分未生成威胁事件,则判定为这小部分ids设备产生了潜在的漏报。
30.所述训练数据集包括tp、tn、fp和fn,其中,tp,表示正确识别攻击流量会话的次数,也表示正确识别攻击流量的数据集;tn,表示正确识别正常流量会话的次数,也表示正确识别正常流量的数据集;fp,表示正常流量会话错被识别为攻击的次数,也表示正常流量会话错被识别为攻击流量的数据集;fn,表示攻击流量会话错被识别为正常的次数,也表示攻击流量会话错被识别为正常流量的数据集。
31.进一步地,将所述训练数据集进行ids多维度评估,得到ids集合的可信度评估向量。
32.作为本发明的一种实施例,ids多维度评估可以包括攻击流量检出率、正常流量检出率、攻击流量检测准确率、流量识别正确率、攻击流量漏报率、流量识别误报率、f分数、
ids设备在网络协议和威胁类别约束下的检测精确度、ids设备在网络协议约束下的检测精确度以及ids网络协议的约束下的检测漏报率。
33.进一步地,所述ids集合的可信度评估向量包括攻击流量检出率、正常流量检出率、攻击流量检测准确率、流量识别正确率、攻击流量漏报率、流量识别误报率、f分数、ids设备在网络协议和威胁类别约束下的检测精确度、ids设备在网络协议约束下的检测精确度以及ids网络协议的约束下的检测漏报率中的一种或几种。
34.(1)攻击流量检出率rec=tp/(tp+fn),是指对ids产品进行流量测试中,网络攻击流量被正确识别为攻击的比例,该指标反映了ids攻击识别能力。
35.(2)正常流量检出率:tn/(fp+tn),是指对ids产品进行流量测试中,网络正常流量被正确识别为正常的比例,该指标反映了ids对正常样本识别能力。
36.(3)攻击流量检测准确率pre=tp/(tp+fp),是指对ids产品进行流量测试中,所有被ids识别为攻击流量的会话数量与真实为攻击会话数量的比值。
37.(4):(tn+tp)/(tn+tp+fn+fp),是指对ids产品进行流量测试中,被正确识别(网络攻击流量和网络正常流量分别被正确识别)的网络流量会话数量与流量测试数据集中会话总数的比例,该指标反映了ids对网络攻击流量和网络正常流量区分能力,在一定程度上可以体现ids设备的总体识别能力。
38.(5):fn/(tp+fn)=1-tp/(tp+fn),是指对ids产品进行流量测试中,被错误识别为正常流量的攻击流量会话数量与测试数据集中攻击会话总数的比值,该指标反映了ids攻击识别能力。
39.(6),fp/(fp+tn)=1-tn/(fp+tn),是指对ids产品进行流量测试中,被错误识别为攻击流量的正常流量会话数量与测试数据集中正常流量会话总数的比值,该指标反映了ids对正常流量会话识别能力。
40.(7)分数,,综合评价ids设备的攻击流量检测准确率和攻击流量检出率的一个指标。对于ids设备的攻击流量检测准确率pre和攻击流量检出率rec指标,从计算公式来看,并没有什么必然的相关性关系。但在大规模流量数据集合中,这两个指标往往相互制约,但要尽量做到这两个指标尽量都高。但一般情况下,pre高,rec就低,rec高,pre就低。在实际网络流量威胁检测过程中,需要确保攻击流量检测准确率的前提下,尽量提高攻击流量检出率。
41.(8)定义ids在网络协议m和威胁类别n约束下的检测精确度,。其中,表示具有不同知识领域ids供应商的数量,表示第个ids设备在网络协议为,威胁类别为的威胁事件总数,表示第个ids设备在网络协议为,威胁类别为的威胁事件为真的数量。显然,对于某一个供应商的ids设备产生的威胁事件,计算和是相对简单的。尽管产生的威胁事件的ids设备供应商各不相同,但威胁事件的格式、类别、协议是标准的,无需进一步泛化。
42.(9)定义ids在网络协议m约束下的检测精确度,。其中
,表示具有不同知识领域ids供应商的数量,表示第个ids设备有关网络协议的威胁事件总数,表示第个ids设备有关网络协议威胁事件为真的数量, 表示在网络协议为情况下由第个ids设备生成的威胁事件类别数量。
43.(10)定义ids在网络协议为情况下的检测漏报率,。其中,表示具有不同知识领域ids供应商的数量,表示合法流量,表示第个ids设备有关网络协议的威胁事件总数为零。表示在网络协议类型为情况下,由第个ids判定的网络流量类型比例;所述网络流量类型,包括tp、tn、fp、fn。
44.在本实施例中,优选的,可以选其中的6个作为ids集合的可信度评估向量,表示为:,即rec、攻击流量检测准确率pre、f分数、、和,简略表示为r、pr、f、p1、p2和p3,则ids设备的可信度评估向量被简化为。
45.ids集合的可信度评估向量能够用于评估ids设备在不同的网络协议和威胁类型场景下的威胁检测能力。
46.s104、首先,利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出出具备控制弱势的负向评估元组,作为ids弱势集合,删除所述ids弱势集合,得到候选ids集合。
47.作为本发明的一种实施例,多目标查询反筛的moqn算法,具体包括:(1)对于指定的检测能力领域(知识领域),根据ids集合的可信度评估向量,对于不同厂家的ids设备进行评估,生成正向ids评估数据集,利用生成ids评估数据集。
48.(2)对待测负向ids评估元组建立临时表,是由多个临时表组成。读取第一组输入放在临时表中。然后,在内存中维护一个消息队列,用于收集相互之间不存在不同厂商ids之间的控制关系的负向评估元组,消息队列初始化为空。
49.(3)读取第一个负向评估元组放到消息队列中。
50.(4)遍历临时表,每当从当前临时表队列中读入一个负向评估元组时,就使用该负向评估元组与消息队列中已有的所有负向评估元组进行控制关系比较,并进行结果判定。若对负向评估元组存在控制弱势,则负向评估元组被删除,后续迭代过程中也不再考虑负向评估元组;若负向评估元组对消息队列中的负向评估元组存在控制弱势,从消息队列中删除被负向评估元组控制的负向评估元组,后续的迭代中也再不考虑这些元组,负向评估元组被插入到消息队列中;若消息队列中的负向评估元组与负向评估元组之间不存在控制弱势,若消息队列空间存在空余,则将负向评估元组插入到消息队列中;若消息队列空间已满,则将负向评估元组写入到下一个临时表中。
51.其中,如图2所示,所述控制弱势定义为:给定的一个k维空间的多个ids负向评估元组集合,若存在两个ids负向评估元组,和,厂商a的ids评估维度的各个
负面评估指标值都不比厂商e差,且至少在一个评估指标上优于ids厂商e,则称为厂商a的ids比厂商e的ids具有控制弱势。其中,,。
52.(5)当遍历到队列的队尾时,部分ids弱势集合将被确定。若队列为空,则算法结束,当前所有消息队列中的负向评估元组都将被作为弱势集合;否则,在第一个写入队列的负向评估元组产生前就已写入消息队列的负向评估元组是ids弱势集合,其他队列中的元组再进行下一轮的处理,重复这个比较过程,新的当前处理队列是。
53.(6)每次迭代结束,输出消息队列中已经和临时表中所有负向评估元组比较过的负向评估元组。这些负向评估元组与其他负向评估元组之间不存在控制关系。其他的负向评估元组若在下一次迭代过程中没有被删除,则被输出。
54.(7)获取具备控制弱势的,进而获取对应的ids弱势集合。
55.moqn算法将对ids设备的可信度评估向量的选择问题,映射为一个典型的多目标优化问题,即控制弱势选择问题,进而实现了ids设备选择的多目标决策,其决策效果远优于转化为单目标优化问题。
56.进一步地,利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合,如图3所示,具体包括:(1)对于指定的检测能力领域(知识领域),根据ids集合的可信度评估向量,对于不同厂家的ids设备进行评估,生成正向ids评估数据集。
57.(2)对待测正向ids评估元组建立临时表,是由多个临时表组成。读取第一组正向ids评估数据放在临时表中。然后,在内存中维护一个消息队列,用于收集相互之间不存在不同厂商ids之间的控制关系的正向评估元组,消息队列初始化为空。
58.(3)读取第一个正向评估元组放到消息队列中。
59.(4)遍历临时表,每当从当前临时表队列中读入一个正向评估元组时,就使用该正向评估元组与消息队列中已有的所有正向评估元组进行控制关系比较,并进行结果判定;若消息队列中存在正向评估元组对正向评估元组存在控制优势,则正向评估元组被删除,后续迭代过程中也不再考虑正向评估元组;若正向评估元组对消息队列中的正向评估元组存在控制优势,从消息队列中删除被正向评估元组控制的正向评估元组,后续的迭代中也再不考虑这些正向评估元组,正向评估元组被插入到消息队列中;若消息队列中的正向评估元组与正向评估元组之间不存在控制优势,若消息队列空间存在空余,则将正向评估元组插入到消息队列中;若消息队列空间已满,则将正向评估元组写入到下一个临时表中。
60.其中,如图3所示,所述控制优势定义为:给定的一个k维空间的多个ids正向评估元组集合,若存在两个ids评估元组,和,厂商a的ids评估维度的各个评估指标值都不比厂商e差,且至少在一个评估指标上优于ids厂商e,则称为厂商a的ids比厂商e的ids具有控制优势。
61.(5)当遍历到队列的队尾时,部分ids权威集合将被确定。若队列为空,则算法结束,当前所有消息队列中的正向评估元组都将被作为ids权威集合;否则,在第一个写
入队列的正向评估元组产生前就已写入消息队列的正向评估元组是ids权威集合,其他队列中的正向评估元组再进行下一轮的处理,重复这个比较过程,新的当前处理队列是。
62.(6)每次迭代结束,输出消息队列中已经和临时表中所有正向评估元组比较过的正向评估元组。这些正向评估元组与其他正向评估元组之间不存在控制关系。其他的正向评估元组若在下一次迭代过程中没有被删除,则被输出。
63.(7)最后,获取具备控制优势的正向评估元组,进而输出对应的ids权威集合。
64.mopn算法对ids设备的可信度评估向量的选择问题,即控制优势选择问题,映射为一个典型的多目标优化问题,进而实现了ids设备选择的多目标决策,其决策效果远优于转化为单目标优化问题。
65.s105、对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型。
66.首先,对当前网络流量会话,ids设备的可信度权重进行分配;其中,所述可信度权重为:其中,为网络流量会话的第i个ids设备的可信度权重;为第i个ids对于第个网络流量会话生成的威胁事件;null表示未生成威胁事件,若未生成告警事件 则为null;为第i个ids设备在网络协议和威胁类别约束下的检测精确度,其中为网络协议,为威胁类别;为第i个ids设备在网络协议约束下的检测精确度;为第i个ids设备在网络协议的约束下的检测漏报率,其中,表示合法流量,表示第i个ids设备有关网络协议m的威胁事件总数为零。
67.对于,存在三种情况:其一,若第个ids生成告警且告警类型在训练数据集范围内,则。
68.其二,若第个ids生成告警且告警类型不在训练数据集范围内,则。
69.其三,若第个ids未生成告警,则。
70.其次,通过计算网络流量会话为恶意行为的概率进行权重投票;所述网络流量会话为恶意行为的概率为:其中,为网络流量会话为恶意行为的概率;为ids权威集合的数量。
71.最后,对网络流量会话的合法性进行判定,若不小于威胁阈值,则网络流量会话被判定为具有恶意行为的流量;若小于威胁阈值且不小于合法阈值,则网络流量会话被判定为合法流量;若小于合法阈值,则网络流量会话被判定为未知流
量。
72.上述通过权重选择we(weighted elector)算法表达为:即当为恶意行为的概率大于等于 ,则流量会话被判定为具有恶意行为的流量;若网络流量会话为恶意行为的概率小于 且大于等于,则网络流量会话被判定为合法流量;若网络流量会话为恶意行为的概率小于 ,则网络流量会话被判定为未知流量。
73.最后,大部分ids设备的告警描述仅仅是一个威胁事件id,需要将威胁事件id映射为具体的威胁事件描述及其网络流量会话为恶意行为的概率,时间复杂度为o(1)。若存在ids设备的告警描述为文本,则将该文本进行哈希后与威胁事件id对应存入数据库,哈希和查询时间复杂度也为o(1)。因此,在检测过程中,we算法具有较低的时间复杂度和较高的计算效率,能够应对大流量情况下的多ids设备的集成。
74.s106、如图4所示,先对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。
75.在本实施例中,通过多路ids集成检测mie(multipath ids ensemble algorithm)算法实现对威胁流量的准确识别和分类。mie算法主要用于提升威胁事件的准确性,即对威胁流量的准确识别和分类。该算法基于以下假设,即不同的ids设备供应商,由于其开发团队构成、服务的目标客户和知识积累等因素不同,使得ids设备往往具有某一个或几个知识领域的优势,这些优势表现在对于具体的协议和攻击类别识别和分类的相对其他ids提供商更为准确。
76.在一些实施例中,网络协议识别:使用多个不同供应商的ids设备生成的网络协议事件进行普通多数表决,确定网络协议类型,例如tcp、udp、http、fpt、mysql等。
77.在一些实施例中,威胁事件类别识别:使用多个不同供应商的ids设备生成的威胁事件类型进行普通多数表决,确定威胁事件类型,例如dos攻击、暴力破解、sql injection、xss、端口扫描等。
78.再引导多路ids设备集成模型,将识别出的网络协议类型和威胁事件类型作为所述多路ids设备集成模型的输入,计算网络流量为恶意行为以及威胁事件的概率。
79.最终,按照威胁事件预定义格式输出判定结果。预定义格式通常,包括会话五元组信息、威胁类型、准确告警的ids设备供应商id集合、pcap包、时间戳等信息。
80.可见,对于实时网络流量进行威胁检测时,通过网络协议识别、威胁事件类别识别和多路ids设备集成模型进行判定,进而提升对于实时流量进行威胁检测的准确性,生成精准的威胁事件。
81.根据本发明的实施例,能够利用较低的时间和计算复杂度减少联合检测的漏报和误报,极大的提高了威胁检测性能,降低了威胁事件基数,极大提高了网络维护人员的工作效率,降低了其工作负担。
82.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列
的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
83.以上是关于方法实施例的介绍,以下通过装置实施例,对本发明所述方案进行进一步说明。
84.如图5所示,装置500包括:获取模块510,用于获取并存储实时和离线的可疑流量pcap包;威胁检测模块520,用于对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据;分析评估模块530,用于对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集;筛选模块540,用于利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,删除所述ids弱势集合,得到候选ids集合;还利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合;权重选择模块550,用于对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型;集成检测模块560,用于对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。
85.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
86.本发明的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
87.根据本发明的实施例,本发明还提供了一种电子设备。
88.图6示出了可以用来实施本发明的实施例的电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
89.设备600包括计算单元601,其可以根据存储在只读存储器(rom)602中的计算机程序或者从存储单元608加载到随机访问存储器(ram)603中的计算机程序,来执行各种适当的动作和处理。在ram 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
90.设备600中的多个部件连接至i/o接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
91.计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单
元601的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如方法s101~s106。例如,在一些实施例中,方法s101~s106可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由rom 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到ram 603并由计算单元601执行时,可以执行上文描述的方法s101~s106的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法s101~s106。
92.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
93.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

技术特征:
1.一种多路ids集成检测方法,其特征在于,包括:获取并存储实时和离线的可疑流量pcap包;对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据;对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集,并将所述训练数据集进行ids多维度评估,得到ids集合的可信度评估向量;利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,删除所述ids弱势集合,得到候选ids集合;利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合;对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型;对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。2.根据权利要求1所述的方法,其特征在于,所述利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,包括:根据ids集合的可信度评估向量,对不同厂家的ids设备进行评估,生成第一ids正向评估数据集,再生成ids负向评估数据集;对所述ids负向评估数据集中的ids负向评估元组建立负向临时表,设置第一消息队列,用于存储相互之间不存在不同厂商ids之间的控制关系的ids负向评估元组;从所述负向临时表中读取ids负向评估元组,若所述第一消息队列为空,则将读取到的ids负向评估元组插入所述第一消息队列中;若所述第一消息队列不为空,则将读取到的ids负向评估元组遍历所述第一消息队列中已有的ids负向评估元组进行控制关系比较,根据比较结果进行出入队;遍历所述负向临时表中的全部ids负向评估元组后,将当前第一消息队列中的ids负向评估元组作为ids弱势集合。3.根据权利要求2所述的方法,其特征在于,所述将读取到的ids负向评估元组遍历所述第一消息队列中已有的ids负向评估元组进行控制关系比较,根据比较结果进行出入队,包括:若所述第一消息队列中存在ids负向评估元组对读取到的ids负向评估元组存在控制弱势,则将读取到的ids负向评估元组删除;若读取到的ids负向评估元组对所述第一消息队列中的ids负向评估元组存在控制弱势,则从所述第一消息队列中删除被读取到的ids负向评估元组控制的ids负向评估元组,将读取到的ids负向评估元组插入所述第一消息队列中;若所述第一消息队列中的ids负向评估元组与读取到的ids负向评估元组之间不存在控制弱势,判断所述第一消息队列是否已满,若所述第一消息队列已满,则将读取到的ids负向评估元组写入另一负向临时表中;若所述第一消息队列未满,则将所述读取到的ids负向评估元组插入所述第一消息队列中;其中,所述控制弱势定义为:
给定的一个多维空间的多个ids负向评估元组集合,若存在两个ids负向评估元组,分别表示两个不同厂商的ids负向评估指标值;若第一ids负向评估元组的各个负向评估指标值不小于第二ids负向评估元组的负向评估指标值,且至少存在一个负向评估指标值大于第二ids评估元组的对应负向评估指标值,则所述第一ids负向评估元组对所述第二ids负向评估元组具有控制弱势。4.根据权利要求1所述的方法,其特征在于,所述利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合,包括:根据ids集合的可信度评估向量,对所述候选ids集合中不同厂家的ids设备进行评估,生成第二ids正向评估数据集;对所述第二ids正向评估数据集中的ids正向评估元组建立正向临时表,设置第二消息队列,用于存储相互之间不存在不同厂商ids之间的控制关系的ids正向评估元组,且所述第二消息队列初始化为空;从所述正向临时表中读取ids正向评估元组,若所述第二消息队列为空,则将读取到的ids正向评估元组插入所述第二消息队列中;若所述消息队列不为空,则将读取到的ids正向评估元组遍历所述消息队列中已有的ids正向评估元组,进行控制关系比较,根据比较结果进行出入队;遍历所述临时表中的全部ids正向评估元组后,将当前第二消息队列中的ids正向评估元组作为ids权威集合。5.根据权利要求4所述的方法,其特征在于,所述将读取到的ids正向评估元组遍历所述消息队列中已有的ids正向评估元组进行控制关系比较,根据比较结果进行出入队,包括:若所述第二消息队列中存在ids正向评估元组对读取到的ids正向评估元组存在控制优势,则将读取到的ids正向评估元组删除;若读取到的ids正向评估元组对所述第二消息队列中的ids正向评估元组存在控制优势,则从所述第二消息队列中删除被读取到的ids正向评估元组控制的ids正向评估元组,将所述读取到的ids正向评估元组插入所述第二消息队列中;若所述第二消息队列中的ids正向评估元组与读取到的ids正向评估元组之间不存在控制优势,判断所述第二消息队列是否已满,若所述第二消息队列已满,则将读取到的ids正向评估元组写入另一正向临时表中;若所述第二消息队列未满,则将所述读取到的ids正向评估元组插入所述第二消息队列中;其中,所述控制优势定义为:给定的一个多维空间的多个ids正向评估元组集合,若存在两个ids正向评估元组,分别表示两个不同厂商的ids正向评估指标值,若第一ids正向评估元组的各个正向评估指标值不小于第二ids正向评估元组的正向评估指标值,且至少存在一个正向评估指标值大于第二ids正向评估元组的对应正向评估指标值,则所述第一ids正向评估元组对所述第二ids正向评估元组具有控制优势。6.根据权利要求1所述的方法,其特征在于,所述对所述候选ids集合和ids权威集合进行权重分配和权重投票,包括:首先,对当前网络流量会话,ids设备的可信度权重进行分配;其中,所述可信度权重
为:其中,为网络流量会话的第i个ids设备的可信度权重;为第i个ids对于第个网络流量会话生成的威胁事件;null表示未生成威胁事件;为第i个ids设备在网络协议和威胁类别约束下的检测精确度,其中为网络协议,为威胁类别;为第i个ids设备在网络协议约束下的检测精确度;为第i个ids设备在网络协议的约束下的检测漏报率,其中,表示合法流量,表示第i个ids设备有关网络协议m的威胁事件总数为零;其次,通过计算网络流量会话为恶意行为的概率进行权重投票;所述网络流量会话为恶意行为的概率为:其中,为网络流量会话为恶意行为的概率;为ids权威集合的数量;最后,对网络流量会话的合法性进行判定,若不小于威胁阈值,则网络流量会话被判定为具有恶意行为的流量;若小于威胁阈值且不小于合法阈值,则网络流量会话被判定为合法流量;若小于合法阈值,则网络流量会话被判定为未知流量。7.根据权利要求2或4所述的方法,其特征在于,所述ids集合的可信度评估向量包括攻击流量检出率、正常流量检出率、攻击流量检测准确率、流量识别正确率、攻击流量漏报率、流量识别误报率、f分数、ids设备在网络协议和威胁类别约束下的检测精确度、ids设备在网络协议约束下的检测精确度以及ids网络协议的约束下的检测漏报率中的一种或几种。8.根据权利要求1所述的方法,其特征在于,所述通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件,包括:使用多个不同厂家的ids设备生成的网络协议事件进行普通多数表决,识别网络协议类型以及威胁事件类型;将识别出的网络协议类型以及威胁事件类型作为所述多路ids设备集成模型的输入,计算网络流量为恶意行为以及威胁事件的概率,输出威胁事件。9.一种多路ids集成检测装置,其特征在于,包括:获取模块,用于获取并存储实时和离线的可疑流量pcap包;威胁检测模块,用于对所述可疑流量pcap包进行流量会话回放,并利用多路ids设备对流量会话进行威胁检测,生成告警数据;分析评估模块,用于对所述告警数据进行tp/tn根因分析及fp/fn根因分析,得到潜在的误报或漏报事件集合作为训练数据集,并将所述训练数据集进行ids多维度评估,得到ids集合的可信度评估向量;
筛选模块,用于利用多目标查询反筛的moqn算法,从ids设备厂家集合中筛选出ids弱势集合,删除所述ids弱势集合,得到候选ids集合;还利用多目标查询正筛的mopn算法,从所述候选ids集合中筛选出ids权威集合;权重选择模块,用于对所述候选ids集合和ids权威集合进行权重分配和权重投票,生成多路ids设备集成模型;集成检测模块,用于对实时流量进行多路ids检测,得到多路ids检测结果,再通过所述多路ids设备集成模型对多路ids检测结果进行多路ids集成检测,输出威胁事件。10.一种电子设备,至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其特征在于,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。

技术总结
本发明提供了一种多路IDS集成检测方法和装置。所述方法包括获取可疑流量PCAP包;对可疑流量PCAP包进行流量会话回放,进行威胁检测,生成告警数据;对告警数据进行根因分析,得到误报或漏报事件集合;从IDS设备厂家集合中筛选出IDS弱势集合,得到候选IDS集合;从候选IDS集合中筛选出IDS权威集合,进行权重分配和权重投票,生成多路IDS设备集成模型;对实时流量进行多路IDS检测,再进行多路IDS集成检测,输出威胁事件。以此方式,利用较低的时间和计算复杂度减少联合检测的漏报和误报,极大的提高了威胁检测性能,降低了威胁事件基数,极大提高了网络维护人员的工作效率,降低了其工作负担。负担。负担。


技术研发人员:曲武 胡文友
受保护的技术使用者:金睛云华(沈阳)科技有限公司
技术研发日:2022.02.07
技术公布日:2022/3/8

最新回复(0)