CN113076543A - 一种针对社交网络中漏洞利用知识库的构建方法 - Google Patents
一种针对社交网络中漏洞利用知识库的构建方法 Download PDFInfo
- Publication number
- CN113076543A CN113076543A CN202110301718.4A CN202110301718A CN113076543A CN 113076543 A CN113076543 A CN 113076543A CN 202110301718 A CN202110301718 A CN 202110301718A CN 113076543 A CN113076543 A CN 113076543A
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- social network
- knowledge base
- text
- corpus
- 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.)
- Granted
Links
- 238000010276 construction Methods 0.000 title description 8
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 239000013598 vector Substances 0.000 claims description 18
- 230000000116 mitigating effect Effects 0.000 claims description 11
- 238000013145 classification model Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 238000002372 labelling Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 230000002457 bidirectional effect Effects 0.000 claims description 4
- 238000013527 convolutional neural network Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 claims description 3
- 230000003203 everyday effect Effects 0.000 claims description 3
- 238000007477 logistic regression Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000002085 persistent effect Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 230000000877 morphologic effect Effects 0.000 claims description 2
- 238000011160 research Methods 0.000 abstract description 3
- 230000000007 visual effect Effects 0.000 abstract description 2
- 238000003062 neural network model Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Business, Economics & Management (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及网络安全领域,为一种针对社交网络中漏洞利用知识库的构建方法,包括:收集社交网络中新出现和近三年的漏洞利用相关文本语料;对原始文本语料进行数据预处理,训练Word2vec词嵌入模型;判别文本语料是否提供漏洞利用代码;提取提供漏洞利用代码的文本语料中的实体信息;汇总实体信息构建漏洞利用知识库。本发明以漏洞利用代码为知识库的核心,为相关从业人员对于漏洞的研究提供一个攻击者的视角,并深入至源代码层面;以社交网络为主要信息来源,结合多种现有网络安全知识库,保证知识库中数据的广覆盖面和高时效性。
Description
技术领域
本发明属于网络安全领域,具体设计一种针对社交网络中漏洞利用知识库的构建方法。
背景技术
随着计算机系统中的软件漏洞不断涌现,用户正面临着越来越严重的安全威胁。近年来,软件漏洞数量呈现总体上升趋势,越来越多的漏洞利用代码出现在互联网上,公开的漏洞利用代码已成为网络攻击链的一部分。目前,社交网络平台已经成为漏洞利用代码信息的重要来源。此外,已经存在一些针对网络安全领域的知识库。例如,CVE是一个漏洞数据库,其中所有漏洞都被授予统一的编号。因此持续监控社交网络,及时提取漏洞利用知识,整合来自各种知识库的漏洞利用相关信息,将有助于网络安全领域从业人员及时、全面地获取并研究网络空间中出现的软件漏洞威胁。
漏洞利用知识库的构建过程包括领域本体构建和知识构建两部分,在本体构建方面,网络安全领域已经存在了很多已有的本体,例如,Zareen Syed提出了一个网络安全本体,本体中包含106个实体类型以及633条领域公理。这些已有的本体都可以成为我们构建漏洞利用领域本体的参考对象。在知识构建方面,一部分是整合现有的知识库中的结构化数据,另一部分是从非结构化文本中提取实体。自动化提取网络安全领域中非结构化文本的实体,是当下的研究热点问题之一。
目前,深度学习、自然语言处理、网络爬虫技术已经广泛应用于网络安全领域。由于社交网络语料规模巨大,且漏洞利用领域相关的语料只占据全部语料中的极小一部分,因此通过人工筛选相关语料并提取实体的方法显然无法满足实用性要求。对此,可以运用深度学习技术对发布于社交网络中的漏洞利用相关实体进行自动化提取并结合现有知识库的信息构建漏洞利用知识库。
本发明基于上述思路,提出一种针对社交网络中漏洞利用知识库的构建方法,以提取社交网络中提供的漏洞利用代码信息为核心,结合与其相关的产品、供应商、攻击模式、漏洞类型、缓解策略实体,构成漏洞利用知识库。
发明内容
有鉴于此,本发明提供了一种针对社交网络中漏洞利用知识库的构建方法,旨在实时收集出现在社交网络中的漏洞利用知识,构建漏洞利用知识库,帮助网络安全领域从业人员及时、全面地获取并研究网络空间中出现软件漏洞威胁。
一种针对社交网络中漏洞利用知识库的构建方法,所述方法包括:
步骤1:收集社交网络中新出现和近三年的漏洞利用相关文本语料;
步骤2:对原始文本语料进行数据预处理,训练Word2vec词嵌入模型;
步骤3:判别文本语料是否提供漏洞利用代码;
步骤4:提取提供漏洞利用代码的文本语料中的实体信息;
步骤5:汇总实体信息构建漏洞利用知识库。
优选的,所述漏洞利用相关文本语料采集流程包括:
设立包括“EXP”、“POC”、“CVE”、“vulnerability”、“exploit”的关键字集合用于从社交网络海量信息中筛选漏洞利用相关文本语料;
每日定时利用网络爬虫和开发者API采集社交网络中新发布的漏洞利用相关文本数据,用于迭代更新漏洞利用知识库,并采集近三年的漏洞利用相关文本数据用于后续的模型训练过程;
当采集得到的文本数据中含有引用的外部链接地址时,使用动态网络爬虫采集对应的外部链接网页的文本内容,与原文本拼接形成最终的语料数据。
优选的,所述数据预处理及词嵌入模型训练流程包括:
从收集到的漏洞利用相关文本语料中去除非ASCII字符、标点符号和停用词;
将文本中所有单词中的大写字母全部由小写字母替换,并使用NLTK进行词形还原;
将文本中的数量词、网页链接、社交网络中的特定用户名、特定话题标记替换为同一代词标记,如“<number>”,“<url>”,“<username>”,“<hashtag>”;
使用近三年漏洞利用相关文本数据为训练集,训练基于CBOW的Word2vec词嵌入模型。
优选的,所述文本语料是否提供漏洞利用代码判别流程包括:
使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,依据其中是否提供漏洞利用代码,人工将训练用语料数据分为两类;
使用一维卷积神经网络对训练集进行训练,得到分类模型,然后使用训练好的分类模型预测其余未经人工标注的漏洞利用相关语料是否提供漏洞利用代码。
优选的,所述漏洞利用相关命名实体提取流程包括:
使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,依据语义将标注出文本中的命名实体(产品、供应商、漏洞类型);
使用词向量矩阵作为模型输入,使用双向长短期记忆神经网络和条件随机场对训练集进行训练,得到序列标注模型;
使用正则表达式对训练集中的漏洞编号进行标记,选择其中只包含唯一漏洞编号的语料作为模型输入训练得到基于逻辑回归算法的漏洞严重性评分模型;
只选取在步骤3中被分类模型判定为提供漏洞利用代码的语料进行命名实体识别;
当在一条语料存在不少于两个代表不同漏洞的编号时,将该语料输入训练得到的序列标注模型中以识别产品、供应商和漏洞类型命名实体;否则就依据漏洞编号信息使用网络爬虫提取产品、供应商和漏洞类型命名实体信息;
使用训练好的漏洞严重性评分模型预测提供漏洞利用代码的语料中所涉及漏洞的严重程度;
依据漏洞类型命名实体信息,使用网络爬虫提取漏洞对应的缓解策略实体;
使用网络攻击技战术映射工具,用提供漏洞利用代码的语料中提取攻击模式命名实体。
优选的,所述汇总漏洞利用相关信息,漏洞利用知识库构建流程包括:
漏洞利用知识本体中的实体类型包括:“漏洞利用信息”、“产品”、“供应商”、“攻击模式”、“漏洞类型”、“缓解策略”;
漏洞利用知识本体中的实体关系类型包括:“包含漏洞”、“利用”、“攻击”、“开发”、“属于”、“缓解”;
依据知识本体的设计,将漏洞利用信息、产品、供应商、攻击模式、漏洞类型、缓解策略构成图结构的漏洞利用知识库,最后使用图数据库进行持久化存储。
本申请提供了一种针对社交网络中漏洞利用知识库的构建方法,与现有技术相比,本发明的有益效果是:以漏洞利用代码为知识库的核心,为相关从业人员对于漏洞的研究提供一个攻击者的视角,并深入至源代码层面;以社交网络为主要信息来源,结合多种现有网络安全知识库,保证知识库中数据的广覆盖面和高时效性。
附图说明
为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的针对社交网络中漏洞利用知识库的构建方法的框架示意图。
图2为本申请实施例提供的提取实体信息的流程示意图。
图3为本申请实施例提供的漏洞利用知识本体模型示意图。
具体实施方式
下面结合附图和具体实施方式对本发明的具体实施方式做进一步详细描述。以下实施例或者附图用于说明本发明,但不用来限制本发明的范围。
参见图1,图1为本申请实施例提供的针对社交网络中漏洞利用知识库的构建方法的方法流程图,包括:
步骤1:收集社交网络中新出现和近三年的漏洞利用相关文本语料。
步骤2:对原始文本语料进行数据预处理,训练Word2vec词嵌入模型。
步骤3:判别文本语料是否提供漏洞利用代码。
步骤4:提取提供漏洞利用代码的文本语料中的实体信息。
步骤5:汇总实体信息构建漏洞利用知识库。
对于收集社交网络中近三年的漏洞利用相关文本语料,其具体步骤包括:
步骤1a:设立包括“EXP”、“POC”、“CVE”、“vulnerability”、“exploit”的关键字集合,便于后续步骤从社交网络海量信息中筛选漏洞利用相关文本语料。
步骤1b:利用网络爬虫和开发者API采集社交网络中近三年相关文本数据用于后续的模型训练过。
可选地,在数据采集过程中,可以记录每条语料中包含关键字的个数。如果采集得到的语料数据集体积仍然过于庞大,或者训练模型时所使用的硬件不足以满足性能要求,则根据实际情况,按照包含关键字个数降序排列,从收集得到的近三年漏洞利用相关语料中选择满足需求的部分数据用于模型训练。
可选地,如果本实施例在运行一段时间后,当前模型已无法高精度地完成任务,则可以重新进行步骤1b,并重新进行模型训练以适应漏洞利用领域的变化。
步骤1c:每日定时利用网络爬虫和开发者API采集社交网络中新发布的漏洞利用相关文本数据。
步骤1d:由于在社交网络中发布信息存在严格的字数限制,部分漏洞利用代码会通过引用外部链接的形式提供,因此,如果在步骤1b和步骤1c中采集得到的文本数据中含有引用的外部链接地址,则进一步使用动态网络爬虫采集其外部链接网页的文本内容,与原文本拼接形成最终的语料数据。
对于数据预处理和训练Word2vec词嵌入模型,其具体步骤包括:
步骤2a:从收集到的漏洞利用相关文本语料中去除非ASCII字符、标点符号和停用词。
步骤2b:将文本中所有单词中的大写字母全部由小写字母替换,并使用NLTK进行词形还原以避免时态或者词汇的单复数形式的影响。
步骤2c:为了避免数量词、网页链接、社交网络中的特定用户名、特定话题名使神经网络模型产生偏向性,将文本中的数量词、网页链接、社交网络中的特定用户名、特定话题标记替换为同一代词标记,如“<number>”,“<url>”,“<username>”,“<hashtag>”。
步骤2d:使用近三年漏洞利用相关文本数据为训练集,使用窗口值为5的连续词袋模型训练得到50维的Word2vec词向量。当遇到不存在于训练语料中的袋外词汇时,使用全为0的50维向量表示。
对于判别文本语料是否提供漏洞利用代码,其具体步骤包括:
步骤3a:使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,人工阅读其中的语料数据,并访问数据来源,然后依据其中是否提供漏洞利用代码,将训练用语料数据集分为两类。
步骤3b:使用步骤2中训练得到的Word2vce词嵌入模型,将原始语料中的单词依照训练得到的Word2vec词嵌入模型替换为词向量。然后取每条语料的前150个词向量,构成50x150的词向量矩阵,作为神经网络模型的输入数据。
可选地,当语料长度小于150时,则在其词向量序列尾部填充全0的50维向量,使得输入神经网络模型的数据均为50x150的词向量矩阵。
步骤3c:使用词向量矩阵作为模型输入,使用Adam优化器,以8为批尺寸对一维卷积神经网络进行500期训练,得到分类模型。一维卷积神经网络中包括:
使用5个卷积核和relu作为激活函数的一维卷积层;
使用64个单元和relu作为激活函数的全连接层;
使用softmax作为激活函数的输出层。
可选地,为了自动化确定较优的模型参数,防止模型过拟合,节约不必要的模型训练时间,可以使用早停法。通过监控每一期训练模型在数据集上产生的损失,当损失连续上升5次时提前停止训练,以保证模型获得较优的参数。
步骤3d:将其余未经人工标注的漏洞利用相关语料输入训练好的分类模型,模型会输出一个0到1之间的数字。当输出数字大于等于0.5时,则表示分类模型认为语料中提供漏洞利用代码。优选地,只保留被分类模型预测为提供漏洞利用代码语料进行后续的实体信息提取。
参见图2,图2为本申请实施例提取实体信息的流程示意图,其具体步骤包括:
步骤4a:使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,依据语义将标注出文本中的命名实体(产品、供应商、漏洞类型)。将文本中出现的产品、供应商、漏洞类型分别标注为“PRODUCT”、“VENDOR”、“TYPE”。对于不属于上述命名实体类型的词汇,标记为“OTHER”。
步骤4b:使用步骤2中训练得到的Word2vce词嵌入模型,将原始语料中的单词依照训练得到的Word2vec词嵌入模型替换为词向量。然后取每条语料的前150个词向量,构成50x150的词向量矩阵,作为神经网络模型的输入数据。
可选地,当语料长度小于150时,则在其词向量序列尾部填充全0的50维向量,使得输入神经网络模型的数据均为50x150的词向量矩阵。
步骤4c:使用词向量矩阵作为模型输入,使用Adam优化器,以8为批尺寸对双向长短期记忆神经网络和条件随机场进行500期训练,得到序列标注模型。双向长短期记忆神经网络中包括:
两层使用128个单元的长短期记忆层;
使用softmax作为激活函数的输出层。
可选地,可以使用早停法以保证模型获得较优的参数,当模型在数据集上的损失连续上升5期时提前停止训练。
步骤4d:使用正则表达式对训练集中的漏洞编号进行标记,选择其中只包含唯一漏洞编号的训练语料,之后人工查询这些漏洞对应的通用漏洞严重性评分作为真实值训练得到基于逻辑回归算法的漏洞严重性评分模型。
优选地,为了匹配漏洞编号,可以建立如下正则表达式,并使用不区分大小写的模式进行匹配:
CVE-\d{4,5}-\d{4,7}|CNVD-\d{4}-\d{4,7}|CNNVD-\d{6}-\d{3,5}。
步骤4e:选取在步骤3中被分类模型判定为提供漏洞利用代码的语料进行后续步骤,使用与步骤4d中相同的正则表达式匹配漏洞编号。
步骤4f:如果在一条语料中,经由步骤4e识别出不少于两个代表不同漏洞的编号,则将该语料输入步骤4c训练得到的序列标注模型中以识别产品、供应商和漏洞类型命名实体;否则就依据漏洞编号信息使用网络爬虫从现有的CVE、NVD知识库中提取产品、供应商和漏洞类型命名实体信息。
步骤4g:使用训练好的漏洞严重性评分模型预测提供漏洞利用代码的语料中所涉及漏洞的严重程度。
步骤4h:依据漏洞类型命名实体信息,使用网络爬虫从现有的CWE知识库中提取漏洞对应的缓解策略实体。
步骤4i:使用网络攻击技战术映射工具,用提供漏洞利用代码的语料中提取攻击模式命名实体。
对于汇总实体信息构建漏洞利用知识库,其具体步骤包括:
步骤5a:依据各个实体、实体的属性、实体间的关系,定义如图3所示的漏洞利用知识本体模型。在本实施例的本体模型中,漏洞利用知识本体中的实体类型包括:“漏洞利用信息”、“产品”、“供应商”、“攻击模式”、“漏洞类型”、“缓解策略”;漏洞利用知识本体中的实体关系类型包括:“包含漏洞”、“利用”、“攻击”、“开发”、“属于”、“缓解”。
步骤5b:依据本体模型的设计,本实施例将结合上述步骤中提取的漏洞利用信息和相关的产品、供应商、攻击模式、漏洞类型、缓解策略实体信息构成图结构的漏洞利用知识库,并使用Neo4j图数据库进行持久化存储。
需要说明的是,对于上述方法实施例而言,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和流程并不一定是本申请所必须的。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。
凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进,均应包含在本发明的保护范围之内。
Claims (6)
1.一种针对社交网络中漏洞利用知识库的构建方法,该方法以提取社交网络中提供的漏洞利用代码为核心,采集与其相关的产品、供应商、攻击模式、漏洞类型、缓解策略实体信息,构成漏洞利用知识库,并存储于图数据库中,其特征在于,所述方法包括:
步骤1:收集社交网络中新出现和近三年的漏洞利用相关文本语料;
步骤2:对原始文本语料进行数据预处理,训练Word2vec词嵌入模型;
步骤3:判别文本语料是否提供漏洞利用代码;
步骤4:提取提供漏洞利用代码的文本语料中实体信息;
步骤5:汇总实体信息构建漏洞利用知识库。
2.根据权利要求1所述的一种针对社交网络中漏洞利用知识库的构建方法,其特征在于,所述步骤1中:
设立包括“EXP”、“POC”、“CVE”、“vulnerability”、“exploit”的关键字集合用于从社交网络海量信息中筛选漏洞利用相关文本语料;
每日定时利用网络爬虫和开发者API采集社交网络中新发布的漏洞利用相关文本数据,用于迭代更新漏洞利用知识库,并采集近三年的漏洞利用相关文本数据用于后续的模型训练过程;
当采集得到的文本数据中含有引用的外部链接地址时,使用动态网络爬虫采集对应的外部链接网页的文本内容,与原文本拼接形成最终的语料数据。
3.根据权利要求1所述的一种针对社交网络中漏洞利用知识库的构建方法,其特征在于,所述步骤2中:
从收集到的漏洞利用相关文本语料中去除非ASCII字符、标点符号和停用词;
将文本中所有单词中的大写字母全部由小写字母替换,并使用NLTK进行词形还原;
将文本中的数量词、网页链接、社交网络中的特定用户名、特定话题标记替换为同一代词标记,如“<number>”, “<url>”,“<username>”,“<hashtag>”;
使用近三年漏洞利用相关文本数据为训练集,训练基于CBOW的Word2vec词嵌入模型。
4.根据权利要求1所述的一种针对社交网络中漏洞利用知识库的构建方法,其特征在于,所述步骤3中:
使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,依据其中是否提供漏洞利用代码,人工将训练用语料数据分为两类;
使用一维卷积神经网络对训练集进行训练,得到分类模型,然后使用训练好的分类模型预测其余未经人工标注的漏洞利用相关语料是否提供漏洞利用代码。
5.根据权利要求1所述的一种针对社交网络中漏洞利用知识库的构建方法,其特征在于,所述步骤4中:
使用步骤1中收集的社交网络中近三年的漏洞利用相关文本语料作为训练集,依据语义将标注出文本中的命名实体(产品、供应商、漏洞类型);
使用词向量矩阵作为模型输入,使用双向长短期记忆神经网络和条件随机场对训练集进行训练,得到序列标注模型;
使用正则表达式对训练集中的漏洞编号进行标记,选择其中只包含唯一漏洞编号的语料作为模型输入训练得到基于逻辑回归算法的漏洞评分模型;
只选取在步骤3中被分类模型判定为提供漏洞利用代码的语料进行命名实体识别;
当在一条语料存在不少于两个代表不同漏洞的编号时,将该语料输入训练得到的序列标注模型中以识别产品、供应商和漏洞类型命名实体;否则就依据漏洞编号信息使用网络爬虫提取产品、供应商和漏洞类型命名实体信息;
使用训练好的漏洞评分模型预测提供漏洞利用代码的语料中所涉及漏洞的严重程度;
依据漏洞类型命名实体信息,使用网络爬虫提取漏洞对应的缓解策略实体;
使用网络攻击技战术映射工具,从提供漏洞利用代码的语料中提取攻击模式命名实体。
6.根据权利要求1所述的一种针对社交网络中漏洞利用知识库的构建方法,其特征在于,所述步骤5中:
漏洞利用知识本体中的实体类型包括:“漏洞利用信息”、“产品”、“供应商”、“攻击模式”、“漏洞类型”、“缓解策略”;
漏洞利用知识本体中的实体关系类型包括:“包含漏洞”、“利用”、“攻击”、“开发”、“属于”、“缓解”;
依据知识本体的设计,将漏洞利用信息、产品、供应商、攻击模式、漏洞类型、缓解策略构成图结构的漏洞利用知识库,最后使用图数据库进行持久化存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110301718.4A CN113076543B (zh) | 2021-03-22 | 2021-03-22 | 一种针对社交网络中漏洞利用知识库的构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110301718.4A CN113076543B (zh) | 2021-03-22 | 2021-03-22 | 一种针对社交网络中漏洞利用知识库的构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113076543A true CN113076543A (zh) | 2021-07-06 |
CN113076543B CN113076543B (zh) | 2022-02-08 |
Family
ID=76613120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110301718.4A Active CN113076543B (zh) | 2021-03-22 | 2021-03-22 | 一种针对社交网络中漏洞利用知识库的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113076543B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113901466A (zh) * | 2021-09-17 | 2022-01-07 | 四川大学 | 面向开源社区的安全工具知识图谱构建方法及装置 |
CN116662523A (zh) * | 2023-08-01 | 2023-08-29 | 宁波甬恒瑶瑶智能科技有限公司 | 一种基于gpt模型的生化知识问答方法、系统及存储介质 |
CN117216767A (zh) * | 2023-09-05 | 2023-12-12 | 四川大学 | 一种基于图神经网络的漏洞利用攻击预测方法 |
CN117909978A (zh) * | 2024-03-14 | 2024-04-19 | 福建银数信息技术有限公司 | 一种基于大数据安全的分析管理方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360152A (zh) * | 2017-07-07 | 2017-11-17 | 四川大学 | 一种基于语义分析的Web威胁感知系统 |
CN111274134A (zh) * | 2020-01-17 | 2020-06-12 | 扬州大学 | 基于图神经网络的漏洞识别与预测方法、系统、计算机设备和存储介质 |
CN111460450A (zh) * | 2020-03-11 | 2020-07-28 | 西北大学 | 一种基于图卷积网络的源代码漏洞检测方法 |
CN111625837A (zh) * | 2020-05-22 | 2020-09-04 | 北京金山云网络技术有限公司 | 识别系统漏洞的方法、装置和服务器 |
CN111709241A (zh) * | 2020-05-27 | 2020-09-25 | 西安交通大学 | 一种面向网络安全领域的命名实体识别方法 |
CN112149135A (zh) * | 2020-09-16 | 2020-12-29 | 国网河北省电力有限公司电力科学研究院 | 安全漏洞知识图谱的构建方法及装置 |
-
2021
- 2021-03-22 CN CN202110301718.4A patent/CN113076543B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360152A (zh) * | 2017-07-07 | 2017-11-17 | 四川大学 | 一种基于语义分析的Web威胁感知系统 |
CN111274134A (zh) * | 2020-01-17 | 2020-06-12 | 扬州大学 | 基于图神经网络的漏洞识别与预测方法、系统、计算机设备和存储介质 |
CN111460450A (zh) * | 2020-03-11 | 2020-07-28 | 西北大学 | 一种基于图卷积网络的源代码漏洞检测方法 |
CN111625837A (zh) * | 2020-05-22 | 2020-09-04 | 北京金山云网络技术有限公司 | 识别系统漏洞的方法、装置和服务器 |
CN111709241A (zh) * | 2020-05-27 | 2020-09-25 | 西安交通大学 | 一种面向网络安全领域的命名实体识别方法 |
CN112149135A (zh) * | 2020-09-16 | 2020-12-29 | 国网河北省电力有限公司电力科学研究院 | 安全漏洞知识图谱的构建方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113901466A (zh) * | 2021-09-17 | 2022-01-07 | 四川大学 | 面向开源社区的安全工具知识图谱构建方法及装置 |
CN116662523A (zh) * | 2023-08-01 | 2023-08-29 | 宁波甬恒瑶瑶智能科技有限公司 | 一种基于gpt模型的生化知识问答方法、系统及存储介质 |
CN116662523B (zh) * | 2023-08-01 | 2023-10-20 | 宁波甬恒瑶瑶智能科技有限公司 | 一种基于gpt模型的生化知识问答方法、系统及存储介质 |
CN117216767A (zh) * | 2023-09-05 | 2023-12-12 | 四川大学 | 一种基于图神经网络的漏洞利用攻击预测方法 |
CN117216767B (zh) * | 2023-09-05 | 2024-04-05 | 四川大学 | 一种基于图神经网络的漏洞利用攻击预测方法 |
CN117909978A (zh) * | 2024-03-14 | 2024-04-19 | 福建银数信息技术有限公司 | 一种基于大数据安全的分析管理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113076543B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113076543B (zh) | 一种针对社交网络中漏洞利用知识库的构建方法 | |
US11861477B2 (en) | Utilizing machine learning models to identify insights in a document | |
Le et al. | Text classification: Naïve bayes classifier with sentiment Lexicon | |
US20210073255A1 (en) | Analyzing the tone of textual data | |
Nasim et al. | Sentiment analysis on Urdu tweets using Markov chains | |
US20170169355A1 (en) | Ground Truth Improvement Via Machine Learned Similar Passage Detection | |
Yang et al. | Automated cyber threat intelligence reports classification for early warning of cyber attacks in next generation SOC | |
Bhakuni et al. | Evolution and evaluation: Sarcasm analysis for twitter data using sentiment analysis | |
Alperin et al. | Risk prioritization by leveraging latent vulnerability features in a contested environment | |
CN111709225B (zh) | 一种事件因果关系判别方法、装置和计算机可读存储介质 | |
Han et al. | CBR‐Based Decision Support Methodology for Cybercrime Investigation: Focused on the Data‐Driven Website Defacement Analysis | |
CN113901466A (zh) | 面向开源社区的安全工具知识图谱构建方法及装置 | |
Sohrabi et al. | Topic modeling and classification of cyberspace papers using text mining | |
Zhu et al. | PDHF: Effective phishing detection model combining optimal artificial and automatic deep features | |
Rahman et al. | A bert-based deep learning approach for reputation analysis in social media | |
Liu et al. | Dynamic updating of the knowledge base for a large-scale question answering system | |
Cavaliere et al. | Propaganda Detection Robustness Through Adversarial Attacks Driven by eXplainable AI | |
Qureshi et al. | Detecting social polarization and radicalization | |
Busyra et al. | Applying Long Short-Term Memory Algorithm for Spam Detection on Ministry Websites | |
Guha | Exploring the Field of Text Mining | |
Choudhary et al. | Fake news detection based on machine learning | |
Li | [Retracted] Outbound Data Legality Analysis in CPTPP Countries under the Environment of Cross‐Border Data Flow Governance | |
Hassanian-esfahani et al. | A survey on web news retrieval and mining | |
Berkani | Decision support based on optimized data mining techniques: Application to mobile telecommunication companies | |
Habib et al. | Iot-based pervasive sentiment analysis: A fine-grained text normalization framework for context aware hybrid applications |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |