基于多元数据的重要网络攻击团伙识别方法与流程

文档序号:30584171发布日期:2022-06-29 15:39阅读:200来源:国知局
基于多元数据的重要网络攻击团伙识别方法与流程

1.本发明涉及一种网络安全领域,特别是涉及一种基于多元数据的重要 网络攻击团伙识别方法。


背景技术:

2.目前基于大量安全事件数据可对安全事件进行粗轮廓统计分析,也可 对事件开展一定的追踪溯源。随着网络攻击和防御之间对抗的加深和演 变,网络攻击行为向着分布化、规模化等趋势发展。与其他大量由单个攻 击资源发起的偶发性攻击事件不同,团伙攻击是通过相对独占的规模化攻 击资源,基于一定的攻击手法进行规模化攻击的攻击行为,团伙攻击行为 往往带有典型的情报、经济等利益目标,得到尤为特殊的关注,例如apt 攻击组织、黑产团伙即是典型的团伙性攻击事件的发起者。
3.网络攻击团伙作为一个有规模的组织,给当今的互联网安全带来了巨 大的威胁,任何连接互联网的设备都可以作为资源被网络攻击团伙侵占, 包括笔记本电脑、台式电脑、智能手机、dvr播放器、无线路由器以及其他 物联网(iot)设备。整个攻击网络由命令和控制(c&c)服务器控制。c &c服务器是受黑客或黑客组织控制的计算机,可以向rat远程控制网络中 的僵尸程序发送命令,并且还可以接收僵尸程序收集的信息。
4.rat远程控制网络作为一种常见且有效的网络攻击手段,给当今的互联 网安全带来了巨大的威胁。任何连接互联网的设备都可以添加到rat远程 控制网络中,包括笔记本电脑、台式电脑、智能手机、dvr播放器、无线路 由器以及其他物联网(iot)设备。rat远程控制网络由命令和控制(c&c) 服务器控制。c&c服务器是受黑客或黑客组织控制的计算机,可以向rat 远程控制网络中的僵尸程序发送命令,并且还可以接收僵尸程序收集的信 息。
5.基于大数据技术在海量数据的挖掘下,通过ai算法成功识别到了网络 攻击团伙,但是由于数据基数大,被发现的团伙数量过多,所以需要对这 些被发现的团伙进行评判,找到其中比较重要的团伙,然而,针对数量如 此巨大的团伙已经无法通过安全专家逐个人工评判,导致了大量的信息浪 费,同时也降低了情报的时效性,
6.有鉴于上述现有的技术存在的缺陷,本发明人经过不断的研究、设计, 并经反复试作及改进后,终于创设出确具实用价值的本发明。


技术实现要素:

7.本发明的主要目的在于,克服现有的技术存在的缺陷,而提供一种新 的基于多元数据的重要网络攻击团伙识别方法,所要解决的技术问题是使 其基于多维度数据开发出自动化的重要团伙识别方法,非常适于实用。
8.本发明的另一目的在于,提供一种新的基于多元数据的重要网络攻击 团伙识别,所要解决的技术问题是使其结合机器学习统计方法和人工授权 保证了识别规则的合理性,从而更加适于实用。
9.本发明的还一目的在于,提供一种新的基于多元数据的重要网络攻击 团伙识别
方法,解决了本领域重要团伙定义及重要性数字化、抽象化,以 及面向重要团伙自动化识别的关键技术指标,从而更加适于实用。
10.本发明的再一目的在于,提供一种新的一种新的基于多元数据的重要 网络攻击团伙识别方法的重要网络攻击团伙发现流程,所要解决的技术问 题是使其可以衔接在团伙聚类计算流程之后以用来完善整条计算链路,从 而更加适于实用,且具有产业上的利用价值。
11.本发明的构思是根据一个网络攻击团伙,通常拥有多种攻击资源,且 这些攻击资源分布广泛,数量巨大,是攻击者所使用的必须资源。所以必 须结合大数据相关技术并应用统计学方法,对团伙信息进行统计分析,为 此,本发明对不同类型特征采用的碰撞、数量统计和模板匹配三种统计法, 同时因为受短期内机器学习的局限性,本发明引用了统计特征工程和人工 赋权结合的方法,既保证了所选特征与结果的相关性,同时又可以根据实 际情况对权重进行调整,进而完成对重要团伙的识别。
12.本发明的目的及解决其技术问题是采用以下技术方案来实现的。依据 本发明提出的一种基于多元数据的重要网络攻击团伙识别方法,其具体步 骤如下:
13.步骤1:数据清洗和特征筛选
14.删掉原始数据中的无用字段避免内存浪费,同时保证各个特征的相关 性和有效性;
15.步骤2:组建特征计算数据集
16.通过大量专家经验组建特征计算数据集;
17.步骤3:筛选出评分参考项
18.根据特征计算数据集通过过滤法即jfilter计算各个特征的皮尔森系 数和距离相关系数即distance correlation筛选出和团伙重要性相关度高 的特征作为之后的评分参考项;
19.步骤4:赋予分数权重
20.针对筛选出和团伙重要性相关度高的特征赋予分数权重,其中部分权 重通过json格式写入配置文件;
21.步骤5:对进行团伙评判
22.采用归一化统计方法对每一个团伙进行评判;计算完所有子项评分之 后,将所有子项合并得出总分,之后按照总分高低进行排名,并且给出多 个等级的评级。
23.进一步,所述的过滤法即filter计算各个特征的皮尔森系数,皮尔森 系数计算方法如下:
[0024][0025]
其中:
[0026]
r为皮尔森相关系数
[0027]
x为自变量
[0028]
y为因变量
[0029]
进一步,所述的距离相关系数即distance correlation进行辅助筛选, 距离相关
系数计算方法如下:
[0030][0031]
其中:
[0032]
dcor(x,y):为距离相关系数;
[0033]
cov是协方差;
[0034]
var是方差。
[0035]
进一步,所述的归一化统计方法包括数据碰撞,数量统计和匹配固定 项目。
[0036]
进一步,所述的数据碰撞是将目标ip和外部数据进行碰撞匹配,得出 命中数量之后将各个团伙之间的命中数量进行归一化计算,并应用x^(1/3) 映射函数以拉近分值,避免特大团伙导致的分数割裂。
[0037]
进一步,所述的数量统计是计算团伙重要资产数量,再次进行归一化 计算并且应用x^(1/3)映射函数以拉近分值避免特大团伙导致的分数割 裂。
[0038]
进一步,所述的匹配固定项目是根据团伙某些特征去匹配固定分 值,这些参数所对应的固定分值会写在配置文件内,以便能随时扩展。
[0039]
本发明与现有技术相比具有明显的优点和有益效果。其至少具有下列 优点:
[0040]
1、本发明对输入的多元原始数据进行清洗和筛选,删掉了原始数据中 的无用字段避免内存浪费,同时保证各个特征的相关性和有效性。
[0041]
2、本发明在采用计算皮尔森系数同时引入距离相关系数(distancecorrelation)进行辅助筛选,解决了传统的皮尔森系数只对线性关系 敏感,无法评价非线性特征对结果的相关性(比如团伙惯用攻击手段等) 的问题。
[0042]
3、本发明通过大量专家经验组建特征计算数据集,并以此数据集为 基础计算各个特征的皮尔森系数并结合距离相关系数,将关联性比较大的 特征作为重要团伙评判特征,并将筛选出来的特征人工赋权使其更适应实 际情况
[0043]
4、本发明通过配置文件能随意扩充细分项目,如果数据出现变化,通过调 整配置文件即可完成对新数据的适配工作。
[0044]
5、本发明对每个团伙的得分应用归一化统计方法避免了分数超出 限制。
[0045]
6、本发明采用幂函数x^(1/3)进行分数映射,避免了特大型团伙导致 的分数割裂。
[0046]
7、本发明通过对赋予分数权重

给予一些特殊的行为固定的权重分,例如 某个购机团伙执行了获取目录树这个细节操作,这个操作会匹配配置文件 中的知识map以给予固定的分值,采用录用安全知识构建固定匹配map,这 样可以将一些细节方面的非主要情报也进行利用,避免数据信息浪费。
[0047]
8、本发明解决了本领域重要团伙定义及重要性数字化、抽象化,以及 面向重要团伙自动化识别的关键技术指标,
[0048]
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的 技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和 其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附 图,详细说明如下。
附图说明
[0049]
图1是本发明流程框架图。
[0050]
图2是本发明特征计算用数据集示例图。
[0051]
图3是本发明x^(1/3)函数曲线图。
具体实施方式
[0052]
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功 效,以下结合附图及较佳实施例,对依据本发明提出的基于多元数据的重要 网络攻击团伙识别方法其具体实施方方法、步骤、特征及其功效,详细说 明如后。
[0053]
请参阅图1、图2和图3所示,本发明较佳实施例的基于多元数据的重 要网络攻击团伙识别方法,其主要包括以下步骤:
[0054]
步骤1:数据清洗和特征筛选
[0055]
对输入的多元原始数据进行清洗和筛选,目的是删掉原始数据中的无 用字段避免内存浪费,同时保证各个特征的相关性和有效性。
[0056]
重要的多元原始数据,包括漏洞利用数据、恶意代码传播数据、ddos 攻击指令集数据,重要资产数据等。
[0057]
步骤2:组建特征计算数据集
[0058]
通过大量专家经验组建特征计算数据集(见图2);
[0059]
步骤3:筛选出评分参考项
[0060]
把所有特征条目全都选出来,然后安全专家通过自己的经验给团伙重 要性进行评分之后,根据特征计算数据集通过过滤法(filter)计算各个 特征的皮尔森系数和距离相关系数(distance correlation)筛选出和团 伙重要性相关度比较高的特征作为之后的评分参考项;
[0061]
其中,通过过滤法(filter)计算各个特征的皮尔森系数,计算皮尔 森系数公式如下:
[0062][0063]
其中:r为皮尔森相关系数
[0064]
x为自变量
[0065]
y为因变量
[0066]
该公式主要计算自变量和因变量之间的相关程度。通过距离相关系数 进行辅助筛选。由于传统的皮尔森系数有个比较比较严重的问题,作为特 征排序机制,他只对线性关系敏感,无法评价非线性特征对结果的相关性 (比如团伙惯用攻击手段等),因此,同时引入距离相关系数(distance correlation)进行辅助筛选,距离相关系数计算公式如下:
[0067][0068]
其中:x为自变量
[0069]
y为因变量
[0070]
cov是协方差
[0071]
var是方差
[0072]
此公式主要计算自变量和因变量之间的独立性,是为了克服皮尔森系 数的问题而使用的。
[0073]
最后筛选出以下特征:
[0074][0075]
步骤4:赋予分数权重
[0076]
通过皮尔森系数和距离相关系数筛选出评判特征之后,针对筛选出和 团伙重要性相关度比较高的特征赋予分数权重,其中这部分权重通过json 格式写入配置文件;
[0077]
通过人工手段给这些特征赋予分数权重,既可以保证所选特征和团伙 的相关性,又可以根据实际情况进行权重调整。例如:{"gang_reason":" 攻击政府单位_1","cal_name":"industry","score": "40","comparison":"政府机关"}意思是此项评分的名称是攻击政府单 位,需要使用第一类通用评分方法,需要使用原始数据中“industry”列, 总分40分,行业详细名称为“政府机关”[0078]
这样就可以通过配置文件随意扩充细分项目,如果数据出现变化,通过 调整配置文件即可完成对新数据的适配工作。
[0079]
步骤5:对进行团伙评判
[0080]
采用归一化统计方法对每一个团伙进行评判;计算完所有子项评分之 后,将所有子项合并得出总分,之后按照总分高低进行排名,并且给出多 个等级的评级。
[0081]
为了适应不同的评判标准,本实施例设立了三种评判方法,分别是— 数据碰撞,数量统计和匹配固定项目。
[0082]
第一种评判方法是将目标ip和外部数据进行碰撞匹配,得出命中数量 之后将各个团伙之间的命中数量进行归一化计算。应用x^(1/3)映射函数以 拉近分值可以避免特大团伙导致的分数割裂。具体映射关系如下所示。
[0083]
第二种评分方法是计算团伙重要资产数量,比如僵尸网络团伙中控制 主机的数量,webshell团伙中攻击者ip数量,统计出数量后,再次进行归 一化计算并且应用x^(1/3)映射函数以拉近分值避免特大团伙导致的分数 割裂。
[0084]
第三种评分方法是根据团伙某些特征去匹配固定分值,例如此团伙是 否符合rat完整模型,惯用攻击手段等,这些参数所对应的固定分值会写 在配置文件内,可以随时扩展。
[0085]
计算完所有子项评分之后,将所有子项合并得出总分,之后按照总分高 低进行排名,并且给出a-d四个等级的评级。
[0086]
进一步,具体实施例如下:
[0087]
步骤一:在几个不同类型的攻击团伙中分别找出50-100个团伙,并尽 可能详细展示团伙的细节,例如bot数量cc数量行业信息是否符合rat 模型

等数据字段。
[0088]
步骤二:完全凭借专家经验对筛选出来的团伙进行独立评价打分得到 团伙评价并构建如下图表:
[0089]
团伙idbot数量cc数量行业信息

评价1201政府机关

52302军工

63403科研

74504基础设施
…8[0090]
步骤三:对特征进行处理之后计算每一个数据字段即自变量与评价即 因变量之间的皮尔森系数,如果是非线性特征就计算相关距离系数,具体 计算方法见上一章节,并以此筛选出关联关系较大的特征,本样例筛选出 的特征如下表:
[0091][0092][0093]
步骤四:赋予分数权重
[0094]
根据筛选出来的特征构建json配置文件:
[0095]
{"gang_reason":"cc数量_2","cal_name":"cc_ip","score": "40","comparison":""}, {"gang_reason":"攻击政府单位次数_1","cal_name": "bot_industry","score":"15","comparison":"政俯机关"} {"gang_reason":"攻击金融机构次数_1","cal_name": "bot_industry","score":"15","comparison":"金融"} {"gang_reason":"攻击能源机构次数_1","cal_name": "bot_industry","score":"15","comparison":"能源"} {"gang_reason":"攻击军工机构次数_1","cal_name": "bot_industry","score":"15","comparison":"军工"} {"gang_reason":"攻击链路完整性_3","cal_name": "rat_botnet","score":"10","comparison":"rat_model"} {"gang_reason":"肉鸡数量数量_2","cal_name":"b_ip","score": "5","comparison":""} {"gang_reason":"漏洞利用类型_3","cal_name": "bexp","score":"10","comparison":"exp"}
[0096]
"gang_reason"字段代表评分项名称,名称后面跟的数字“1”,“2”,“3
”ꢀ
代表使用
不同的计算逻辑代码块即三种不同的维度,1代表和外部数据进 行碰撞,在此例中代表碰撞计算具体的行业命中数量2代表规模计算,在 此例中代表计算cc和bot的数量3代表固定map匹配此例中匹配项目是 漏洞利用类型系统会维护一个外部map里面会记录不同的漏洞利用相应 的得分比如:
[0097]
获取目录树:1分
[0098]
下载文件:5分
[0099]
……
[0100]“cal_name”代表在原始数据中参与计算的数据字段也就是需要使用的数据 字段名称。"score"代表根据实际使用者喜好,为筛选出来的特征进行的权 重分数分配,"comparison"则代表附加信息,在维度3的计算中代表外部 维护map的名称。
[0101]
步骤五:开始计算,系统根据配置文件计算每个团伙的子项分数,并 进行优化过的归一化计算,具体计算逻辑参见数据碰撞,数量统计和匹配 固定项目,并最终把每个团伙的每一个子项分数限定在0-配置文件分配分 值之间,具体计算完成的抽象结构如下表所示:
[0102][0103]
步骤六 相加合并所有分数然后进行排序,并将高分团伙反馈给上级系 统。
[0104]
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式 上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发 明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利 用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但 凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例 所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围 内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1