CN112257076B - 一种基于随机探测算法和信息聚合的漏洞检测方法 - Google Patents

一种基于随机探测算法和信息聚合的漏洞检测方法 Download PDF

Info

Publication number
CN112257076B
CN112257076B CN202011254177.6A CN202011254177A CN112257076B CN 112257076 B CN112257076 B CN 112257076B CN 202011254177 A CN202011254177 A CN 202011254177A CN 112257076 B CN112257076 B CN 112257076B
Authority
CN
China
Prior art keywords
vulnerability
information aggregation
information
vulnerability detection
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011254177.6A
Other languages
English (en)
Other versions
CN112257076A (zh
Inventor
肖清林
石小川
张晶
陈瑜靓
赵昆杨
黄靓
陈鹭菲
王榕腾
杜鑫
杨国林
杨昆强
刘健养
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen Useear Information Technology Co ltd
Original Assignee
Xiamen Useear Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xiamen Useear Information Technology Co ltd filed Critical Xiamen Useear Information Technology Co ltd
Priority to CN202011254177.6A priority Critical patent/CN112257076B/zh
Publication of CN112257076A publication Critical patent/CN112257076A/zh
Application granted granted Critical
Publication of CN112257076B publication Critical patent/CN112257076B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/53Decompilation; Disassembly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于随机探测算法和信息聚合的漏洞检测方法,方法包括建立信息合集;反编译;建立二进制训练合集;建立漏洞检测模型;漏洞检测模型判断异常点;漏洞处理。本发明通过信息聚合模块,多次对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到纯度高的二进制训练合集,再配合径向基函数神经网络和递归神经网络作用,建立漏洞检测模型,通过机器学习,不断完善模型对二进制软件中可能存在的安全漏洞的检测能力,同时采用随机森林算法,提高了对待检测二进制程序的函数以及对应的特征向量提取的准确性,达到漏洞检测快速、准确的目的。

Description

一种基于随机探测算法和信息聚合的漏洞检测方法
技术领域
本发明涉及漏洞检测领域,尤其涉及一种基于随机探测算法和信息聚合的漏洞检测方法。
背景技术
随着计算机信息技术的飞速发展,网络空间安全日益重要,因为软件漏洞导致的网络事件呈高发趋势,对网络空间安全造成了很大的威肋,漏洞分析技术成为网络安全领域的研究热点。
漏洞检测是漏洞分析技术的一个重要分支,多是从已有漏洞出发,查找与其存在同源关系的相似漏洞甚至根据漏洞代码特征发现未公开的漏洞。然而现有的漏洞检测方法进行特征提取时,样本数量多且杂,造成漏洞检测模型工作效率不高,进而影响漏洞检测的准确性和针对性。
为解决上述问题,本申请中提出一种基于随机探测算法和信息聚合的漏洞检测方法。
发明内容
(一)发明目的
为解决背景技术中存在的技术问题,本发明提出一种基于随机探测算法和信息聚合的漏洞检测方法,本发明通过信息聚合模块,多次对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到纯度高的二进制训练合集,再配合径向基函数神经网络和递归神经网络作用,建立漏洞检测模型,通过机器学习,不断完善模型对二进制软件中可能存在的安全漏洞的检测能力,同时采用随机森林算法,提高了对待检测二进制程序的函数以及对应的特征向量提取的准确性,达到漏洞检测快速、准确的目的。
(二)技术方案
为解决上述问题,本发明提供了一种基于随机探测算法和信息聚合的漏洞检测方法,方法步骤如下:
S1、建立信息聚合模块,对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到java/C++代码构成的信息合集;
S2、将信息合集内以字节码为最小单位进行反编译,得到与其一一对应的操作码;
S3、对操作码的轻量级静态特征进行提取,同时信息聚合模块对提取的所有特征信息再次进行采集、筛选、组织和整合,建立二进制训练合集;
S4、提取二进制训练合集中的函数以及对应的特征向量,并将其和随机算法进行链接、配合,得到漏洞检测模型;
S5、信息聚合模块不断采集新的动态特征和静态特征,对漏洞检测模型进行完善;
S6、漏洞检测模型对二进制程序进行漏洞检测,将提取到的待检测二进制程序的函数以及对应的特征向量输入至漏洞检测模型,将其与已知漏洞的二进制程序的函数以及对应的特征向量进行对比,分析相似性,判断异常点;
S7、将待检测二进制程序的异常点拟合到T颗决策树,计算在每颗决策树上该样本的叶子节点的深度ht(x),从而可以计算出平均高度h(x),得到异常概率,计算公式为:
其中,m为样本个数;
c(m)的表达式为:
ξ为欧拉常数;s(x,m)的取值范围是[0,1],取值越接近于1,则是异常点的概率也越大;
S8、将判断结果发送至漏洞处理模块。
优选的,采用径向基函数神经网络和递归神经网络对漏洞检测模型进行完善。
优选的,径向基函数神经网络设置有第一输入层、隐藏层和第二输出层;第一输入层和第二输出层输层位于隐藏层上端和下端。
优选的,相邻神经元之间权重起始为1,随训练程度变化而改变。
优选的,递归神经网络对训练合集中的时间序列数据切割处理,得到时间序列矩阵,再将时间序列矩阵返回漏洞检测模型。
优选的,在S3中,信息聚合模块除去信息合集中内容重复率高于重复阈值的操作码,并对操作码样本数量进行统计。
优选的,在S3中,采用基尼指数对信息聚合模块的统计结果进行纯化。
优选的,信息聚合模块将信息合集内代码转化为XML文本。
优选的,特征信息采集时以XML文本的每个节点为最小单位,以语法、语义、函数行为为采集目标,分为基本信息特征、二元操作符特征、代码复杂度特征和路径特征。
优选的,设置预处理模块对待检测二进制程序进行预处理,提取代码函数以及对应的特征向量。
优选的,在S8中,设置模拟攻击模块,对检测出的各个漏洞进行攻击模拟,验证漏洞的危险级别。
本发明的上述技术方案具有如下有益的技术效果:
本发明通过信息聚合模块,多次对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到纯度高的二进制训练合集,再配合径向基函数神经网络和递归神经网络作用,建立漏洞检测模型,通过机器学习,不断完善模型对二进制软件中可能存在的安全漏洞的检测能力,同时采用随机森林算法,提高了对待检测二进制程序的函数以及对应的特征向量提取的准确性,达到漏洞检测快速、准确的目的。
附图说明
图1为本发明提出的一种基于随机探测算法和信息聚合的漏洞检测方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
如图1所示,本发明提出的一种基于随机探测算法和信息聚合的漏洞检测方法,方法步骤如下:
S1、建立信息聚合模块,对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到java/C++代码构成的信息合集;
S2、将信息合集内以字节码为最小单位进行反编译,得到与其一一对应的操作码;
S3、对操作码的轻量级静态特征进行提取,同时信息聚合模块对提取的所有特征信息再次进行采集、筛选、组织和整合,建立二进制训练合集;
S4、提取二进制训练合集中的函数以及对应的特征向量,并将其和随机算法进行链接、配合,得到漏洞检测模型;
S5、信息聚合模块不断采集新的动态特征和静态特征,对漏洞检测模型进行完善;
S6、漏洞检测模型对二进制程序进行漏洞检测,将提取到的待检测二进制程序的函数以及对应的特征向量输入至漏洞检测模型,将其与已知漏洞的二进制程序的函数以及对应的特征向量进行对比,分析相似性,判断异常点;
S7、将待检测二进制程序的异常点拟合到T颗决策树,计算在每颗决策树上该样本的叶子节点的深度ht(x),从而可以计算出平均高度h(x),得到异常概率,计算公式为:
其中,m为样本个数;
c(m)的表达式为:
ξ为欧拉常数;s(x,m)的取值范围是[0,1],取值越接近于1,则是异常点的概率也越大;
S8、将判断结果发送至漏洞处理模块。
在一个可选的实施例中,采用径向基函数神经网络和递归神经网络对漏洞检测模型进行完善。
在一个可选的实施例中,径向基函数神经网络设置有第一输入层、隐藏层和第二输出层;第一输入层和第二输出层输层位于隐藏层上端和下端。
在一个可选的实施例中,相邻神经元之间权重起始为1,随训练程度变化而改变。
在一个可选的实施例中,递归神经网络对训练合集中的时间序列数据切割处理,得到时间序列矩阵,再将时间序列矩阵返回漏洞检测模型。
在一个可选的实施例中,在S3中,信息聚合模块除去信息合集中内容重复率高于重复阈值的操作码,并对操作码样本数量进行统计。
在一个可选的实施例中,在S3中,采用基尼指数对信息聚合模块的统计结果进行纯化。
在一个可选的实施例中,信息聚合模块将信息合集内代码转化为XML文本。
在一个可选的实施例中,特征信息采集时以XML文本的每个节点为最小单位,以语法、语义、函数行为为采集目标,分为基本信息特征、二元操作符特征、代码复杂度特征和路径特征。
在一个可选的实施例中,设置预处理模块对待检测二进制程序进行预处理,提取代码函数以及对应的特征向量。
在一个可选的实施例中,在S8中,设置模拟攻击模块,对检测出的各个漏洞进行攻击模拟,验证漏洞的危险级别。
本发明通过信息聚合模块,多次对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到纯度高的二进制训练合集,再配合径向基函数神经网络和递归神经网络作用,建立漏洞检测模型,通过机器学习,不断完善模型对二进制软件中可能存在的安全漏洞的检测能力,同时采用随机森林算法,提高了对待检测二进制程序的函数以及对应的特征向量提取的准确性,达到漏洞检测快速、准确的目的。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (7)

1.一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,方法步骤如下:
S1、建立信息聚合模块,对软件各模块中的网络数据流信息进行采集、筛选、组织和整合,得到java/C++代码构成的信息合集;
S2、将信息合集内以字节码为最小单位进行反编译,得到与其一一对应的操作码;
S3、对操作码的轻量级静态特征进行提取,同时信息聚合模块对提取的所有特征信息再次进行采集、筛选、组织和整合,建立二进制训练合集;
S4、提取二进制训练合集中的函数以及对应的特征向量,并将其和随机算法进行链接、配合,得到漏洞检测模型;
S5、信息聚合模块不断采集新的动态特征和静态特征,对漏洞检测模型进行完善;采用径向基函数神经网络和递归神经网络对漏洞检测模型进行完善;径向基函数神经网络设置有第一输入层、隐藏层和第二输出层;第一输入层和第二输出层输层位于隐藏层上端和下端;相邻神经元之间权重起始为1,随训练程度变化而改变;递归神经网络对训练合集中的时间序列数据切割处理,得到时间序列矩阵,再将时间序列矩阵返回漏洞检测模型;
S6、漏洞检测模型对二进制程序进行漏洞检测,将提取到的待检测二进制程序的函数以及对应的特征向量输入至漏洞检测模型,将其与已知漏洞的二进制程序的函数以及对应的特征向量进行对比,分析相似性,判断异常点;
S7、将待检测二进制程序的异常点拟合到T颗决策树,计算在每颗决策树上样本的叶子节点的深度ht(x),从而可以计算出平均高度h(x),得到异常概率,计算公式为:
其中,m为样本个数;
c(m)的表达式为:
ξ为欧拉常数;s(x,m)的取值范围是[0,1],取值越接近于1,则是异常点的概率也越大;
S8、将判断结果发送至漏洞处理模块。
2.根据权利要求1所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,在S3中,信息聚合模块除去信息合集中内容重复率高于重复阈值的操作码,并对操作码样本数量进行统计。
3.根据权利要求1所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,在S3中,采用基尼指数对信息聚合模块的统计结果进行纯化。
4.根据权利要求1所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,信息聚合模块将信息合集内代码转化为XML文本。
5.根据权利要求4所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,特征信息采集时以XML文本的每个节点为最小单位,以语法、语义、函数行为为采集目标,分为基本信息特征、二元操作符特征、代码复杂度特征和路径特征。
6.根据权利要求1所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,设置预处理模块对待检测二进制程序进行预处理,提取代码函数以及对应的特征向量。
7.根据权利要求1所述的一种基于随机探测算法和信息聚合的漏洞检测方法,其特征在于,在S8中,设置模拟攻击模块,对检测出的各个漏洞进行攻击模拟,验证漏洞的危险级别。
CN202011254177.6A 2020-11-11 2020-11-11 一种基于随机探测算法和信息聚合的漏洞检测方法 Active CN112257076B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011254177.6A CN112257076B (zh) 2020-11-11 2020-11-11 一种基于随机探测算法和信息聚合的漏洞检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011254177.6A CN112257076B (zh) 2020-11-11 2020-11-11 一种基于随机探测算法和信息聚合的漏洞检测方法

Publications (2)

Publication Number Publication Date
CN112257076A CN112257076A (zh) 2021-01-22
CN112257076B true CN112257076B (zh) 2023-12-15

Family

ID=74265229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011254177.6A Active CN112257076B (zh) 2020-11-11 2020-11-11 一种基于随机探测算法和信息聚合的漏洞检测方法

Country Status (1)

Country Link
CN (1) CN112257076B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115277067A (zh) * 2022-06-15 2022-11-01 广州理工学院 一种基于人工鱼群算法的计算机网络信息漏洞检测方法
CN116933272B (zh) * 2023-08-03 2024-04-12 浙江十勇士网络科技有限公司 一种游戏漏洞实时分析方法、装置及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826439B1 (en) * 2011-01-26 2014-09-02 Symantec Corporation Encoding machine code instructions for static feature based malware clustering
CN104063309A (zh) * 2013-03-22 2014-09-24 南京理工大学常熟研究院有限公司 基于模拟攻击的Web应用程序漏洞检测方法
CN110737899A (zh) * 2019-09-24 2020-01-31 暨南大学 一种基于机器学习的智能合约安全漏洞检测方法
CN110796485A (zh) * 2019-10-11 2020-02-14 上海上湖信息技术有限公司 一种提高预测模型的预测精度的方法及装置
CN111310191A (zh) * 2020-02-12 2020-06-19 广州大学 一种基于深度学习的区块链智能合约漏洞检测方法
CN111639344A (zh) * 2020-07-31 2020-09-08 中国人民解放军国防科技大学 一种基于神经网络的漏洞检测方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826439B1 (en) * 2011-01-26 2014-09-02 Symantec Corporation Encoding machine code instructions for static feature based malware clustering
CN104063309A (zh) * 2013-03-22 2014-09-24 南京理工大学常熟研究院有限公司 基于模拟攻击的Web应用程序漏洞检测方法
CN110737899A (zh) * 2019-09-24 2020-01-31 暨南大学 一种基于机器学习的智能合约安全漏洞检测方法
CN110796485A (zh) * 2019-10-11 2020-02-14 上海上湖信息技术有限公司 一种提高预测模型的预测精度的方法及装置
CN111310191A (zh) * 2020-02-12 2020-06-19 广州大学 一种基于深度学习的区块链智能合约漏洞检测方法
CN111639344A (zh) * 2020-07-31 2020-09-08 中国人民解放军国防科技大学 一种基于神经网络的漏洞检测方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"一种基于随机探测算法和信息聚合的漏洞检测方法";文伟平 等;《信息网络安全》;20190131;3-6页 *

Also Published As

Publication number Publication date
CN112257076A (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN109005145B (zh) 一种基于自动特征抽取的恶意url检测***及其方法
CN110245496A (zh) 一种源代码漏洞检测方法及检测器和其训练方法及***
CN107360152A (zh) 一种基于语义分析的Web威胁感知***
CN108268777A (zh) 一种利用补丁信息进行未知漏洞发现的相似性检测方法
CN112257076B (zh) 一种基于随机探测算法和信息聚合的漏洞检测方法
CN103177215A (zh) 基于软件控制流特征的计算机恶意软件检测新方法
CN113221112B (zh) 基于弱相关集成策略的恶意行为识别方法、***和介质
CN112685738B (zh) 一种基于多级投票机制的恶意混淆脚本静态检测方法
CN113297580B (zh) 基于代码语义分析的电力信息***安全防护方法及装置
CN111382438A (zh) 基于多尺度卷积神经网络的恶意软件检测方法
CN113722719A (zh) 针对安全拦截大数据分析的信息生成方法及人工智能***
CN117220920A (zh) 基于人工智能的防火墙策略管理方法
CN1223941C (zh) 一种基于相关特征聚类的层次入侵检测***
McGahagan et al. A comprehensive evaluation of webpage content features for detecting malicious websites
CN106650449B (zh) 一种基于变量名混淆程度的脚本启发式检测方法及***
CN105243327B (zh) 一种文件安全处理方法
CN107832611B (zh) 一种动静态特征结合的僵尸程序检测与分类方法
CN117077153B (zh) 基于大规模语言模型的静态应用安全检测误报判别方法
CN106874762A (zh) 基于api依赖关系图的安卓恶意代码检测方法
CN113722711A (zh) 基于大数据安全漏洞挖掘的数据添加方法及人工智能***
CN116796323A (zh) 一种智能合约重入攻击检测方法、***及终端设备
CN115842645A (zh) 基于umap-rf的网络攻击流量检测方法、装置及可读存储介质
CN111475812B (zh) 一种基于数据可执行特征的网页后门检测方法与***
CN110135155B (zh) 一种基于模糊K近邻的Windows恶意软件识别方法
KR20220009098A (ko) 정적분석과 스태킹 기법을 활용한 악성코드 탐지 시스템에 관한 연구

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220914

Address after: 361000 units 1702 and 1703, No. 59, Chengyi North Street, phase III, software park, Xiamen, Fujian

Applicant after: XIAMEN USEEAR INFORMATION TECHNOLOGY Co.,Ltd.

Address before: Unit 1701, 59 Chengyi North Street, phase III, software park, Xiamen City, Fujian Province, 361000

Applicant before: FUJIAN QIDIAN SPACE-TIME DIGITAL TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant