开云优惠体育网页版入口

开云优惠体育网页版入口:一种基于机器学习的安全数据处理方法、介质及设备

更新时间:2026-09-01
一种基于机器学习的安全数据处理方法、介质及设备 专利申请类型:发明专利;
地区:河南-商丘;
源自:商丘高价值专利检索信息库;

专利名称:一种基于机器学习的安全数据处理方法、介质及设备

专利类型:发明专利

专利申请号:CN202211644911.9

专利申请(专利权)人:田帅领
权利人地址:河南省商丘市柘城县洪恩乡胡店村委会小田庄村民组004号

专利发明(设计)人:刘兰,何康健,惠占发,胡峻涵,陈子力

专利摘要:本发明公开了一种基于机器学习的安全数据处理方法、介质及设备,所述方法包括如下步骤:描述各个安全场景的;获取各个安全场景对应的安全数据;对安全数据进行数据处理;调用各个安全场景下的算法模型,将处理后的数据作为算法模型的输入;输出算法结果,即为各个安全场景下的输出结果。本发明可用于处理不同安全场景的安全数据,使得各种安全数据能够形成统一的范式输入到算法模型中,减少为每种安全场景开发独立数据处理技术的成本。

主权利要求:
1.一种基于机器学习的安全数据处理方法,其特征在于,包括如下步骤:描述各个安全场景的问题;
获取各个安全场景的对应安全数据;
对安全数据进行数据处理;
调用各个安全场景下的算法模型,将处理后形成统一范式的数据作为算法模型的输入;
输出算法结果,即为各个安全场景下的输出结果;
步骤获取各个安全场景的对应安全数据,包括:获取WebShell检测安全场景中的恶意文件内容记录;获取恶意软件检测安全场景中的API记录;获取SQL注入检测安全场景中的请求数据中SQL语句记录;获取XSS检测安全场景中源码的URL记录;
步骤对安全数据进行数据处理,包括如下步骤:初步清洗安全数据;
对安全数据文本进行分词;
安全数据特征化和向量化;
步骤对安全数据文本进行分词,包括:
对恶意软件检测安全场景中的动态API行为序列数据,采用单词粒度分词方法进行分词;对XSS检测安全场景中的恶意代码数据,采用单词粒度分词方法进行分词;对DNS域名检测安全场景中的域名数据,采用字符粒度分词方法进行分词;对URL检测安全场景中的URL数据,采用字符粒度分词方法进行分词。
2.根据权利要求1所述的方法,其特征在于,步骤初步清洗安全数据,包括如下步骤:处理安全数据缺失值:删除缺失率大于92%的变量,对空值进行定制填充,数据存在倾斜分布时采用中位数进行填补;
处理安全数据离群点:基于绝对离差中位数(MAD)和3σ原则判断异常点的数量和影响;
处理安全数据噪声:对安全数据进行等频分箱,用每个箱的平均数替代箱中的所有数。
3.根据权利要求1所述的方法,其特征在于,步骤安全数据特征化和向量化,包括如下步骤:将分词后的安全数据转换为词序列,得到词序列索引;
获得word2vec预训练的矩阵;
使用全量数据建立任意大小的字典;
根据词序列索引和word2vec预训练的矩阵,获得深度学习模型,对安全数据文本进行词嵌入向量的映射。
4.根据权利要求3所述的方法,其特征在于,步骤获得word2vec预训练的矩阵,包括如下步骤:输入层输入多个上下文单词的one?hot;
设最终获得的词向量的维度为N,输入层与隐藏层之间的权重矩阵 ,其中,权重矩阵的维度为V*N;
上下文单词的one?hot与网络的输入权重矩阵 相乘,得到C个1*N的向量,其中,one?hot的维度为C*V,权重矩阵 的维度为V*N;
将C个1*N的向量进行求和,并求平均,得到隐藏层向量 ,维度为1*N;
设隐藏层与输出层之间的权重矩阵 ,维度为N*V;
隐藏层向量 与权重矩阵 相乘,得到维度为1*V的向量 ,其中,隐藏层向量 的维度为
1*N,权重矩阵 的维度为N*V;
采用Softmax函数对向量 进行处理,获得向量Softmax(u);
将1*V的向量 与GroudTruth中的one?hot进行对比,获得最大化实际中心词出现的概率;
根据最大化实际中心词出现的概率,定义损失函数;
通过最小化损失函数,采用梯度下降算法更新 与 ;
迭代梯度下降算法直至收敛,完成训练,获得词向量 。
5.一种计算机可读存储介质,其特征在于,其为计算机可读的存储介质,其上存储有计算机程序,所述计算机程序被执行时实现如权利要求1?4中任一项所述的方法。
6.一种计算机设备,其特征在于,包括:处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1?4中任一项所述的方法。 说明书 : 一种基于机器学习的安全数据处理方法、介质及设备技术领域[0001] 本发明属计算机网络安全技术领域,具体涉及一种基于机器学习的安全数据处理方法、介质及设备。背景技术[0002] 随着云计算、大数据、物联网等技术迅猛发展,数以亿计的联网设备以及网络应用产生的海量数据给网络空间的安全带来了巨大的挑战,网络威胁变得更加棘手、难以应付。面对挑战,传统的解决方案已经显得效率低下。[0003] 网络攻击手段层出不穷,攻击者为了达到目的使用各种网络攻击手段,常见的有跨站脚本(XSS)、SQL注入、:馐、零日攻击、目录遍历、Ddos、中间人攻击、暴力破解、WebShell、DNS隧道攻击、网络钓鱼等等。然而不同的安全场景在系统中留下的记录也不断,例如在WebShell检测安全场景中,其中WebShell的恶意文件内容就是最关键的记录;在恶意软件检测安全场景中,恶意软件的API就是最关键的记录;在SQL注入检测安全场景中,请求数据中的SQL语句就是最关键的记录;在XSS检测安全场景中,源码中的URL就是最关键的记录。在现有技术中,每种安全场景都有各自相应的技术来检测对应的网络攻击,这表明每个安全场景问题是相互孤立的,同时构建各独立的检测技术需要巨大的成本。[0004] 随着机器学习的出现,每个安全场景问题互相孤立的问题得到了缓解,其强大的计算能力和自适应性使得其成为处理安全场景的有效方法。发明内容[0005] 为了克服上述技术缺陷,本发明提供了一种基于机器学习的安全数据处理方法,针对不同安全场景的安全数据提供了一种通用的处理方案,使得处理后的安全数据形成统一的范式输入到算法模式中进行计算。[0006] 为了解决上述问题,本发明按以下技术方案予以实现的:[0007] 一种基于机器学习的安全数据处理方法,包括以下步骤:[0008] 描述各个安全场景的问题;[0009] 获取各个安全场景对应的安全数据;[0010] 对安全数据进行数据处理;[0011] 调用各个安全场景下的算法模型,将处理后的数据作为算法模型的输入;[0012] 输出算法结果,即为各个安全场景下的输出结果。[0013] 进一步的,步骤对安全数据进行数据处理,包括如下步骤:[0014] 初步清洗安全数据;[0015] 对安全数据文本进行分词;[0016] 安全数据特征化和向量化。[0017] 进一步的,步骤初步清洗安全数据,包括如下步骤:[0018] 处理安全数据缺失值:删除缺失率大于92%的变量,对空值进行定制填充,数据存在倾斜分布时采用中位数进行填补;[0019] 处理安全数据离群点:基于绝对离差中位数(MAD)和3σ原则判断异常点的数量和影响;[0020] 处理安全数据噪声:对安全数据进行等频分箱,用每个箱的平均数替代箱中的所有数。[0021] 进一步的,步骤对安全数据文本进行分词,包括如下步骤:[0022] 根据安全数据对应的安全场景,采用单词粒度分词方法或字符粒度分词方法对安全数据文本进行分词。[0023] 进一步的,步骤安全数据特征化和向量化,包括如下步骤:[0024] 将分词后的安全数据转换为词序列,得到词序列索引;[0025] 获得word2vec预训练的矩阵;[0026] 使用全量数据建立任意大小的字典;[0027] 根据词序列索引和word2vec预训练的矩阵,获得深度学习模型,对安全数据文本进行词嵌入向量的映射。[0028] 进一步的,步骤获得word2vec预训练的矩阵,包括如下步骤:[0029] 输入层输入多个上下文单词的one?hot;[0030] 设最终获得的词向量的维度为N,输入层与隐藏层之间的权重矩阵W,维度为V*N;[0031] 上下文单词的one?hot(CV)与网络的输入权重矩阵W(VN)相乘,得到C个1*N的向量;[0032] 将C个1*N的向量进行求和,并求平均,得到隐藏层向量h,维度为1*N;[0033] 设隐藏层与输出层之间的权重矩阵W′,维度为N*V;[0034] 隐藏层向量h(1*N)与权重矩阵W′(N*V)相乘,得到1*V的向量u;[0035] 采用Softmax函数对向量u进行处理,获得向量Softmax(u);[0036] 将1*V的向量u与GroudTruth中的one?hot进行对比,获得最大化实际中心词出现的概率;[0037] 根据最大化实际中心词出现的概率,定义损失函数;[0038] 通过最小化损失函数,采用梯度下降算法更新W与W′;[0039] 迭代梯度下降算法直至收敛,完成训练,获得词向量W。[0040] 与现有技术相比,本发明具有以下有益效果:[0041] 本发明公开了一种基于机器学习的安全数据处理方法,可用于处理不同安全场景的安全数据,使得各种安全数据能够形成统一的范式输入到算法模型中,减少为每种安全场景开发独立数据处理技术的成本。[0042] 本发明还公开了一种计算机可读存储介质,其为计算机可读的存储介质,其上存储有计算机程序,所述计算机程序被执行时实现上述的方法。[0043] 本发明还公开了一种计算机设备,包括:[0044] 处理器;[0045] 用于存储所述处理器可执行指令的存储器;[0046] 其中,所述处理器被配置为执行所述指令,以实现上述的方法。附图说明[0047] 下面结合附图对本发明的具体实施方式作进一步详细的说明,其中:[0048] 图1为实施例1所述的安全数据处理方法的流程图;[0049] 图2为实施例3所述的计算机设备的示意图。具体实施方式[0050] 以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。[0051] 实施例1[0052] 如图1,本实施例公开了一种基于机器学习的安全数据处理方法,将机器学习和网络安全进行结合,方法包括如下步骤:[0053] S1、描述各个安全场景的问题:即描述检测安全场景时采用的网络攻击手段,如跨站脚本(XSS)、SQL注入、:馐、零日攻击、目录遍历、DdoS、中间人攻击、暴力破解、WebShell、DNS隧道攻击、网络钓鱼等等。[0054] S2、获取各个安全场景对应的安全数据:不同的安全场景在系统中留下的关键记录不同,获取WebShell检测安全场景中的恶意文件内容记录;获取恶意软件检测安全场景中的API记录;获取SQL注入检测安全场景中的请求数据中SQL语句记录;获取XSS检测安全场景中源码的URL记录。[0055] S3、对安全数据进行数据处理,将各独立的安全场景的安全数据进行处理,:湓械陌踩【疤匦,使得各独立的安全场景的安全数据形成统一的范式。[0056] 具体的,步骤S3包括如下步骤:[0057] S31、初步清洗安全数据:[0058] 处理安全数据缺失值:删除缺失率大于92%的变量,对空值进行定制填充,数据存在倾斜分布时采用中位数进行填补,使得采集的安全数据价值最大化。[0059] 处理安全数据离群点:处于特定分布区域或范围之外的数据通常被定义为异常或噪声,通过基于绝对离差中位数(MAD)和3σ原则判断异常点的数量和影响,来决定是否删除该数据。[0060] 处理安全数据噪声:对安全数据进行等频分箱,用每个箱的平均数替代箱中的所有数。[0061] S32、对安全数据文本进行分词:不同的安全场景对应有不同的安全数据,不同安全数据中特殊符号的意义各不相同,根据对应的安全场景,采用不同的分词方法对安全数据文本进行分词:[0062] 对恶意软件检测安全场景中的动态API行为序列数据,采用单词粒度分词方法进行分词。[0063] 对XSS检测安全场景中的恶意代码数据,采用单词粒度分词方法进行分词。[0064] 对DNS域名检测安全场景中的域名数据,采用字符粒度分词方法进行分词。[0065] 对URL检测安全场景中的URL数据,采用字符粒度分词方法进行分词。[0066] 对Denial?Of?Service(DOS)非法企图中断或干扰主机或网络的正常运行的数据,采用单词粒度分词方法进行分词。[0067] 对RemotetoLocal(R2L)远程非授权用户非法获得本地主机的用户特权的数据,采用单词粒度分词方法进行分词。[0068] 对UsertoRoot(U2R)本地非授权用户非法获取本地超级用户或管理员的特权的数据,采用单词粒度分词方法进行分词。[0069] 对Surveillanceorprobe(Probe)非法扫描主机或网络,寻找漏洞、搜索系统配置或网络拓扑的数据,采用单词粒度分词方法进行分词。[0070] 在上述实施例中,由于安全场景的特殊性,安全数据中的特殊符号也是不可或缺的,忽略特殊符号会丢失部分原始信息。但常见的如使用Keras的文本处理类Tokenizer预处理文本数据时,默认会过滤文本数据中的所有特殊符号,仅保留单词,因此不仅需要采用单词粒度分词方法,还需要采用字符粒度分词方法进行分词处理,以保留特殊符号数据。[0071] S33、安全数据特征化和向量化:[0072] 将分词后的安全数据转换为词序列,得到词序列索引。[0073] 获得word2vec预训练的矩阵。[0074] 使用全量数据建立任意大小的字典。[0075] 对安全数据文本进行词嵌入向量的映射,根据词序列索引和word2vec预训练的矩阵,获得深度学习模型,对安全数据文本进行词嵌入向量的映射。[0076] 在上述实施例中,步骤获得word2vec预训练的矩阵,包括如下步骤:[0077] 输入层输入多个上下文单词的one?hot。[0078] 设最终获得的词向量的维度为N,输入层与隐藏层之间的权重矩阵W(维度为V*N)。[0079] 上下文单词的one?hot(维度为C*V)与网络的输入权重矩阵W(维度为V*N)相乘,得到C个1*N的向量。[0080] 将C个1*N的向量进行求和,并求平均,得到隐藏层向量h,维度为1*N:[0081][0082] 设隐藏层与输出层之间的权重矩阵W′(维度为N*V)。[0083] 隐藏层向量h(维度为1*N)与权重矩阵W′(维度为N*V)相乘,得到维度为1*V的向量u:[0084][0085] 其中,uj为u的子集。[0086] 采用Softmax函数对向量u进行处理,获得向量Softmax(u)。[0087] 将1*V的向量u与GroudTruth中的one?hot进行对比,获得最大化实际中心词出现的概率。[0088] 根据最大化实际中心词出现的概率,定义损失函数:[0089][0090] 通过最小化损失函数,采用梯度下降算法更新W与W′。[0091] 迭代梯度下降算法直至收敛,完成训练,获得词向量W。[0092] S4、调用各个安全场景下的算法模型,将处理后形成统一范式的数据作为算法模型的输入。[0093] S5、输出算法结果,即为各个安全场景下的输出结果。[0094] 采用恶意软件检测安全场景,并获得恶意软件检测安全场景中的API,对安全数据作初步清洗、文本分词以及特征化和向量化处理,文本分词中对动态API行为序列数据采用单词粒度分词方法进行分词,使得数据具有统一的范式,将统一范式的数据输入到恶意软件检测安全场景下的最佳算法模型中,输出算法结果,获得恶意软件检测安全场景下的的输出结果。[0095] 本发明采用机器学习处理安全场景的安全数据,将机器学习和网络安全两个领域相结合,使得各独立的安全场景的安全数据能够形成统一的范式输入到算法模型中,无需为各安全场景设计构建独立的检测模型;输出算法结果,即获得各安全场景下安全数据的处理结果,从而减少了在安全领域中为每种安全场景构建独立的检测技术所需的巨大成本。[0096] 实施例2[0097] 本实施例公开了一种计算机可读存储介质,其为计算机可读的存储介质,其上存储有计算机程序,计算机程序被执行时实现实施例1中的方法。[0098] 可选地,该计算机可读存储介质可以包括:只读存储器(ROM,ReadOnlyMemory)、随机存取记忆体(RAM,RandomAccessMemory)、固态硬盘(SSD,SolidStateDrives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,ResistanceRandomAccessMemory)和动态随机存取存储器(DRAM,DynamicRandomAccessMemory)。[0099] 实施例3[0100] 如图2所示,本实施例公开了一种计算机设备,包括:处理器及用于存储所述处理器可执行指令的存储器;处理器被配置为执行指令,以实现实施例1中方法。[0101] 本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。[0102] 以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。[0103] 以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,故凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

专利地区:河南

专利申请日期:2022-12-16

专利公开日期:2024-08-16

专利公告号:CN116186698B


以上信息来自国家知识产权局,如信息有误请联系我方更正!
该专利所有权非本平台所有,我方无法提供专利权所有者联系方式,请勿联系我方。
电话咨询
到底部
搜本页
回顶部
开云优惠体育(中国)官网 — 开云优惠体育app下载