CN115186109B - 威胁情报知识图谱的数据处理方法、设备、介质 - Google Patents
威胁情报知识图谱的数据处理方法、设备、介质 Download PDFInfo
- Publication number
- CN115186109B CN115186109B CN202210942932.2A CN202210942932A CN115186109B CN 115186109 B CN115186109 B CN 115186109B CN 202210942932 A CN202210942932 A CN 202210942932A CN 115186109 B CN115186109 B CN 115186109B
- Authority
- CN
- China
- Prior art keywords
- attribute
- entity
- name
- information
- threat
- 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
Links
Images
Classifications
-
- 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/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及安全信息网络技术领域,提供一种威胁情报知识图谱的数据处理方法、设备、介质,方法包括:获取威胁情报数据,所述威胁情报数据包括多类实体集,每类实体集包括多个实体;每个实体包括多个基本属性和多个关联属性;每个基本属性和关联属性均包括属性名和属性值,每一个关联属性的属性值为另一个实体;将每个实体的基本属性和关联属性存入一个实体文档;建立三元组列表;将三元组列表和每个实体文档转换格式,导入搜索服务器,形成威胁情报知识图谱。本方案将海量的威胁情报相关的信息进行整合、清理、图谱关联,返回关键要素和关联关系等有价值的信息,及时为网络安全的预防工作提供保障。
Description
技术领域
本发明涉及安全信息网络技术领域,特别是涉及一种威胁情报知识图谱的数据处理方法、设备、介质。
背景技术
近年来,网络安全事件频发,网络攻击手段日益呈现复杂多变的特征,新型攻击工具层出不穷,单纯依靠入侵防御系统等被动防御手段已经无法有效地维护网络空间安全,特别是近年来频发的针对关键信息基础设施的攻击活动,对国家网络安全保障工作带来了巨大挑战。
同时,大数据、人工智能、机器学习、深度学习等技术的发展,也为网络安全防护提供了新的解决方案。安全分析人员通过挖掘此类数据中的信息,虽然可以为网络安全态势感知提供支撑,实现安全预警预测,支持网络安全决策,但是网络安全数据存在海量化、分散化、碎片化以及关系隐蔽化的特点,同一威胁的实体不同名的问题得不到有效处理,不同类别之间的联系未得到有效整合,如何对海量的数据进行分析处理,提取关键要素和关联关系,挖掘海量数据中潜在的有价值信息,是网络安全领域面临的重要问题。
因此,亟需开发一种基于威胁情报知识图谱的数据处理方法、设备、介质,将海量的数据进行整合、清理、图谱关联,返回关键要素和关联关系等有价值信息,及时为网络安全的预防工作提供保障。
发明内容
本发明的目的是提供一种威胁情报知识图谱的数据处理方法、设备、介质,将海量的威胁情报相关的信息进行整合、清理、图谱关联,返回关键要素和关联关系等有价值的信息,及时为网络安全的预防工作提供保障。
为解决上述技术问题,作为本发明的一个方面,提供了一种威胁情报知识图谱的数据处理方法,包括以下步骤:
获取威胁情报数据,所述威胁情报数据包括多类实体集,每类实体集包括多个实体;
每个实体包括多个基本属性和多个关联属性;每个基本属性和关联属性均包括属性名和属性值,每一个关联属性的属性值为另一个实体;将每个实体的基本属性和关联属性存入一个实体文档;
建立三元组列表,三元组列表包括多个三元组,每个三元组包括实体、属性名及属性值;
将三元组列表和每个实体文档转换格式,导入搜索服务器,形成威胁情报知识图谱。
根据本发明一示例实施方式,所述数据处理方法还包括:所述导入搜索服务器后,建立同义词扩展库并关联搜索服务器。
根据本发明一示例实施方式,所述建立同义词扩展库的方法包括:
抽取所有实体的名称以及实体所包含的属性名;每个实体的基本属性均包括实体的名称;
找到实体的名称和实体所包含的属性名对应的同义词;
将同义词新增为对应实体的名称或实体所包含的属性名的扩展名。
根据本发明一示例实施方式,所述找到实体的名称和实体所包含的属性名对应的同义词的方法包括:
采用人工的方式或相似度计算的方法找到实体的名称和实体所包含的属性名对应的同义词。
根据本发明一示例实施方式,所述获取威胁情报数据的方法包括:
获取ATT&CK数据和Threat Group Cards数据;
ATT&CK数据基于stix格式录入;
将Threat Group Cards数据与ATT&CK数据相同的部分合并,不同的部分以stix格式录入;
补全stix格式中Threat Group Cards数据未填充的部分。
作为本发明的第二个方面,提供了一种获取威胁情报详细信息的方法,包括以下步骤:
采用所述的威胁情报知识图谱的数据处理方法建立威胁情报知识图谱;
向威胁情报知识图谱输入自然语言问句;
对该自然语言问句进行分词,得到一个或多个信息分词;
根据一个或多个信息分词从威胁情报知识图谱中获取查询结果。
根据本发明一示例实施方式,所述根据一个或多个信息分词从威胁情报知识图谱中获取查询结果的方法包括:
每个信息分词包括实体的名称、属性名或属性值;
判断信息分词为实体的名称、属性名还是属性值;
将判断的信息分词从威胁情报知识图谱中获取查询结果。
所述将判断的信息分词从威胁情报知识图谱中获取查询结果的方法包括:如果信息分词为一个且包括实体的名称,则返回该实体的所有属性名和属性值;
如果信息分词为两个,且第一个信息分词包括实体的名称,第二个信息分词包括属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的属性名,如果包含,则返回对应的属性值;
如果信息分词为三个以上,且第一个信息分词包括实体的名称,其余的信息分词包括属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的第一个属性名,如果包含,找到第一个属性名对应的属性值,判断是否存在以第一个属性名对应的属性值为名称的实体,如果存在,以第一个属性名对应的属性值为实体的名称检索对应的实体,再判断检索结果是否包含第二个属性名,如果包含,找到第二个属性名对应的属性值,采用相同的方法找到第N个属性名对应的属性值,直到判断到最后一个属性名,返回最后一个属性名对应的属性值;N为大于或等于2的自然数。
根据本发明一示例实施方式,所述判断信息分词为实体的名称、属性名还是属性值的方法包括:
先判断是否为属性名,在字典记录知识库中通过匹配的方法找出是否有属性名,若有,则为属性名;所述字典记录知识库中存储有所有属性名;
再判断是否为实体的名称,将信息分词在威胁情报知识图谱中进行查询,判断是否存在以该信息分词为实体的名称的实体文档,若有,则为实体的名称;
接着判断是否为属性值,采用模糊匹配的方法或采用分词后根据n-gram模型通过Elasticsearch进行检索的方法判断信息分词是否为属性值,如果为属性值,统计该属性值对应的属性名,用该属性值对应的最频繁使用的属性名作为补全的属性名。
作为本发明的第三个方面,提供一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现所述威胁情报知识图谱的数据处理方法。
作为本发明的第四个方面,提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现所述威胁情报知识图谱的数据处理方法。
本发明的有益效果是:
本发明通过建立威胁情报知识图谱,将目前已有的海量的数据进行整合、清洗、图谱关联,通过搜索一种实体的名称时可以返回更加详细的内容,获取到威胁情报详细信息,获取到的信息为有价值的信息,能够及时为网络安全的预防工作提供保障。
附图说明
图1示意性示出了第一个实施方式的威胁情报知识图谱的数据处理方法的步骤图。
图2示意性示出了各类实体集的关系图。
图3示意性示出了第二个实施方式的威胁情报知识图谱的数据处理方法的步骤图。
图4示意性示出了获取威胁情报详细信息的方法步骤图。
图5示意性示出了通过一个或多个信息分词获取查询结果的逻辑图。
图6示意性示出了一种电子设备的框图。
图7示意性示出了一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
根据本发明的第一个具体实施方式,提供一种威胁情报知识图谱的数据处理方法,如图1所示,包括以下步骤:
步骤S11:获取威胁情报数据,所述威胁情报数据包括多类实体集,每类实体集包括多个实体;
步骤S12:每个实体包括多个基本属性和多个关联属性;每个基本属性和关联属性均包括属性名和属性值,每一个关联属性的属性值为另一个实体;将每个实体的基本属性和关联属性存入一个实体文档;
步骤S13:建立三元组列表,三元组列表包括多个三元组,每个三元组包括实体、属性名及属性值;
步骤S14:将三元组列表和每个实体文档转换格式,导入搜索服务器,形成威胁情报知识图谱。
步骤S11中,获取威胁情报数据的方法包括:
获取ATT&CK数据和Threat Group Cards数据;
ATT&CK数据基于stix格式录入;
将Threat Group Cards数据与ATT&CK数据相同的部分合并,不同的部分以stix格式录入;
补全stix格式中Threat Group Cards数据未填充的部分。
ATT&CK数据是基于stix格式进行扩展的数据。Threat Group Cards数据是关于“威胁组织”的数据集,其中部分数据已经收录进ATT&CK数据,为使数据格式保持一致以及数据的唯一性,对两者进行整合。将ATT&CK数据和Threat Group Cards数据相同的部分(即相同的字段或表示相近的内容)进行合并,并且将Threat Group Cards数据在stix格式中所没有内容进行补充。
威胁情报数据的格式为Stix格式,包括七类实体集,其中五类实体集如图2所示,类别为:恶意组织、恶意软件、攻击方式、工具、应对措施。恶意组织通过使用恶意软件采用攻击方式进行恶意攻击,针对于攻击方式,通过应对措施进行应对。工具指的是网络攻击事件中使用的恶意工具。另外两类实体集为数据源和数据组件。一个数据源可以有多个数据组件,每个数据组件中可以包含多种攻击方式,但是每个数据组件只能对应一个数据源,每个攻击方式可以属于不同的数据组件。例如,例如"Adversary-in-the-Middle"攻击方式有"LLMNR/NBT-NS Poisoning and SMB Relay"和"ARP Cache Poisoning"两种子类攻击方式,曾经被”Dok”和”Kimsuky”两种恶意软件使用过,进行网络攻击,可以采用”Disable orRemove Feature or Program”、”Encrypt Sensitive Information”等多种方式进行网络防御。可见,各类实体集均相互关联。每类实体集包括多个实体,不同类别的实体、相同类别的实体相互关联。实体之间形成相互交错的关系网,需要建立威胁情报知识图谱将实体与实体之间的关系进行连接。
步骤S12中,每个实体包括多个基本属性和多个关联属性,每个基本属性和关联属性均包括属性名和属性值。属性值为属性名对应的内容。基本属性的属性名包括实体的名称、类型、stix编号、mitre_id、描述。Mitre_id指在MITRE数据中的ID号,是一个唯一ID。关联属性用于将一个实体与另一个实体进行关联。关联属性的属性值为另一个实体,用“obj”键进行标识,关联属性的属性名用“pred”键进行关联。将每个实体的基本属性和关联属性存入一个实体文档,实体文档的名称即为该实体的名称。将一个实体存为一个实体文档,更加容易、方便地检索出实体以及实体所关联的内容,可以支持多对属性名和属性值联合检索,提高检索效率。
由于属性名种类较少,为方便后续的检索,建立字典记录知识库,将属性名存入该字典记录知识库中。
步骤S13中,建立三元组列表,三元组列表包括多个三元组,每个三元组包括实体、属性名及属性值这三个字段,这样就能关联上每一对属性名和属性值。三元组列表为一种数据类型,这种数据类型能存储大量拥有相同key(属性名)的对象(value、属性值),即多对key-value中,key(属性名)可以相同,对应的value(属性值)可以不同。例如:某一实体中,有四个名为“地址”的属性名,其属性值分别为:“中国”、“中国北京市”、“中国北京市海淀区”、“中国北京市海淀区中关村”。不论数据中有多少种属性值不同但属性名相同的基本属性或关联属性,都可以以相同的格式存储,之所以不是每一个三元组存储为一个文档,而是一个实体相关的所有属性名及属性值存储为一个文档,是因为要支持通过多对属性名和属性值联合检索满足要求的实体,以这种格式存储,能提高检索效率。
将一个三元组保存为一个文档,例如,{"subject": "A某", "relation": "身高", "object": 180, }为一个三元组,该内容单独保存在一个txt文档中。
将一个实体的所有属性名及属性值存储为一个文档,例如,实体的所有属性名及属性值如下:
{"po": [
{"pred": "alumniOf", "obj": "某院"},
{"pred": "birthDate", "obj": "某年某月某日"},
{"pred": "birthPlace", "obj": "某市"},
{"pred": "gender", "obj": "男"},
{"pred": "nationality", "obj": "中国"},
{"pred": "民族", "obj": "汉族"},
{"pred": "职业", "obj": "运动员"},
{"pred": "职业", "obj": "篮球运动员"},
{"pred": "职业", "obj": "其他"},
{"pred": "职业", "obj": "某队老板"},
{"pred": "children", "obj": "B某"},
{"pred": "spouse", "obj": "C某"}],
"height": 180,
"subj": "A某"}
将该实体的所有属性名及属性值的所有内容保存在一个txt文档中。
步骤S14中,将三元组列表和每个实体文档转换格式,转换后的格式为json格式,这种json格式为搜索服务器要求的输入格式。将转换好的json格式的问道导入搜索服务器,形成威胁情报知识图谱。搜索服务器采用 Elasticsearch。Elasticsearch是一个基于Lucene的搜索服务器, 也是一个分布式、高扩展、高实时的搜索与数据分析引擎。它提供了一个分布式多用户能力的全文搜索引擎。
根据本方案的威胁情报知识图谱的数据处理方法,通过建立的威胁情报知识图谱可以对网络安全领域中海量的相关攻击技术等数据进行整合、清洗、图谱关联,便于查询相关有价值的威胁情报详细信息,及时采取相应的预防措施。
根据本发明的第二个具体实施方式,提供一种威胁情报知识图谱的数据处理方法,与第一个具体实施方式的方法基本相同,不同的地方在于,还包括:所述导入搜索服务器后,建立同义词扩展库并关联搜索服务器。
具体地,如图3所示,第二个具体实施方式的数据处理方法包括以下步骤:
步骤S11:获取威胁情报数据,所述威胁情报数据包括多类实体集,每类实体集包括多个实体;
步骤S12:每个实体包括多个基本属性和多个关联属性;每个基本属性和关联属性均包括属性名和属性值,每一个关联属性的属性值为另一个实体;将每个实体的基本属性和关联属性存入一个实体文档;
步骤S13:建立三元组列表,三元组列表包括多个三元组,每个三元组包括实体、属性名及属性值;
步骤S14:将三元组列表和每个实体文档转换格式,导入搜索服务器;
步骤S15:建立同义词扩展库并关联搜索服务器,形成威胁情报知识图谱。
步骤S11至步骤S14的方法与第一个具体实施方式的相同。
步骤S15中,建立同义词扩展库的方法包括:
抽取所有实体的名称以及实体所包含的属性名;每个实体的基本属性均包括实体的名称;
找到实体的名称和实体所包含的属性名对应的同义词;
将同义词新增为对应实体的名称或实体所包含的属性名的扩展名。
找到实体的名称和实体所包含的属性名对应的同义词的方法包括:
采用人工的方式或相似度计算的方法找到实体的名称和实体所包含的属性名对应的同义词。
采用人工的方式包括:
根据日常生活中的中文使用习惯人工确定属性名的同义词,根据实体是否有别名、或网络安全领域的专有编号确定实体的名称的同义词。如果实体有别名或专有编号,则确定为实体的名称的同义词。
相似度计算的方法包括:
获取分词,将分词与抽取的实体的名称以及实体所包含的属性名进行余弦相似度比较,设定预定阈值,当相似度大于预定阈值时判定分词与实体的名称或实体所包含的属性名相近,将分词确定为实体的名称或实体所包含的属性名的同义词。
关联搜索服务器的方法包括:
将扩展名映射到威胁情报知识图谱的数据集中存在的属性名或实体的名称上。
为实体的名称和属性名扩展同义词,当输入的信息为同义词时,能够自动关联上对应的、唯一的实体的名称或属性名,能够扩大检索范围,防止漏检。
根据本发明的第三个具体实施方式,提供一种获取威胁情报详细信息的方法,如图4所示,包括以下步骤:
步骤S1:采用所述的威胁情报知识图谱的数据处理方法建立威胁情报知识图谱;
步骤S2:向威胁情报知识图谱输入自然语言问句;
步骤S3:对该自然语言问句进行分词,得到一个或多个信息分词;
步骤S4:根据一个或多个信息分词从威胁情报知识图谱中获取查询结果。
步骤S1中,可以采用第一个具体实施方式或第二个具体实施方式的方法建立威胁情报知识图谱。
步骤S2中,自然语言问句为对需要获取的威胁情报详细信息的提问,该自然语言问句中包括实体和/或属性名的信息。
步骤S4中,根据一个或多个信息分词从威胁情报知识图谱中获取查询结果的方法包括:
每个信息分词包括实体的名称、属性名或属性值;
判断信息分词为实体的名称、属性名还是属性值;
将判断的信息分词从威胁情报知识图谱中获取查询结果。
判断信息分词为实体的名称、属性名还是属性值的方法包括:
先判断是否为属性名,在字典记录知识库中通过匹配的方法找出是否有属性名,若有,则为属性名;所述字典记录知识库中存储有所有属性名;
再判断是否为实体的名称,将信息分词在威胁情报知识图谱中进行查询,判断是否存在以该信息分词为实体的名称的实体文档,若有,则为实体的名称;
接着判断是否为属性值,采用模糊匹配的方法或采用分词后根据n-gram模型通过Elasticsearch进行检索的方法判断信息分词是否为属性值,如果为属性值,统计该属性值对应的属性名,用该属性值对应的最频繁使用的属性名作为补全的属性名。
对于属性值,由于变化较大,因此可以采用模糊匹配的方法或采用分词后n-gram检索es的方法。在进行信息分词判断时,主要通过实体的名称和属性名进行判断,将判断出的属性值补全属性名,便于后续的判断。
N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,我们称之为汉语语言模型(CLM, Chinese Language Model)。汉语语言模型利用上下文中相邻词间的搭配信息,可以实现到汉字的自动转换。
对多个信息分词按顺序进行判断是否为实体的名称、属性名还是属性值,如果判断出的多个信息分词中均没有实体的名称,存在第一个属性名对应的属性值为实体的名称,则以第一个属性名对应的属性值作为实体的名称。
将判断的信息分词从威胁情报知识图谱中获取查询结果的方法包括:
如果信息分词仅包括实体的名称,则返回该实体的所有属性名和属性值;
如果信息分词为两个,且包括一个实体的名称和一个属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的属性名,如果包含,则返回对应的属性值;
如果信息分词为三个以上,且包括一个实体的名称和两个以上属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的第一个属性名,如果包含,找到第一个属性名对应的属性值,判断是否存在以第一个属性名对应的属性值为名称的实体,如果存在,以第一个属性名对应的属性值为实体的名称检索对应的实体,再判断检索结果是否包含第二个属性名,如果包含,找到第二个属性名对应的属性值,采用相同的方法找到第N个属性名对应的属性值,直到判断到最后一个属性名,返回最后一个属性名对应的属性值;N为大于或等于2的自然数。
例如,信息分词仅包括实体名称,自然语言问句为:“A某是谁”对这句话进行分析时,识别的实体名就是“A某”,得到S(实体的名称)=A某。
信息分词仅包括实体名称和属性名,自然语言问句为:“A某的个子是多少”,对这句话进行分析时,识别的实体的名称为“A某”,属性名为“个子”,由于“个子”这个属性名在数据保存时没有,可以通过同义词扩展库匹配到“身高”这个属性名,最终得到S(实体的名称)=A某,P(属性名)=身高。
信息分词包括属性名和属性值,自然语言问句为“攻击某国的攻击方式有哪些”,这句话实际想问的是“(遭受攻击地区是)某国(的)攻击方式有哪些”,得到的信息分词为“某国”、“攻击方式”,其中“某国”为“遭受攻击地区”的属性值,“遭受攻击地区”为属性名,需要识别“遭受攻击地区”这个属性名并将属性名及自然语言问句进行补全,得到的信息分词为“遭受攻击地区是某国”、“攻击方式”,信息分词中没有直接的实体名称,则判断遭受攻击地区是否包含某国,如果包含,则得到S(实体的名称)=“某国”,P(属性名)=“攻击方式”。
具体地获取查询结果的方法如下:
建立逻辑表模板,逻辑表模板如表1所示:
表1
模板中包括实体检索、实体的属性检索以及实体属性的多跳检索三个查询类型。
在检索的时候,根据检索内容,判断查询类型,进而根据查询类型找到查询方式,得到查询结果。实体检索表示想要获取的威胁情报详细信息为某一实体的所有属性名及属性值的信息,输入的自然语言问句中只包含一个实体的名称,不包含属性名,实体的名称用S表示。实体的属性检索表示想要获取的威胁情报详细信息为某一实体的某一属性的信息,输入的自然语言问句中包含一个实体的名称和一个属性名,实体的名称用S表示,属性名用P表示。实体属性的多跳检索表示想要获取的威胁情报详细信息关联多个实体,会涉及到多个实体的检索,输入的自然语言问句中包含一个实体的名称以及多个属性名,实体的名称用S表示,属性名分别用P1、P2、P3....表示。
如图5所示,从输入自然语言问句到查询结果输出的具体步骤如下:
将自然语言问句进行分词,得到一个或多个信息分词。每个信息分词包括实体的名称、属性名。如果有同义词扩展库,则进行同义词匹配。判断信息分词是否包含实体,如果包含实体,则判断是否包含属性,如果不包含属性,说明为表1中的实体检索的查询类型,逻辑语句输出该实体的所有属性名和属性值;如果包含属性,判断属性的数量是否大于1,如果不大于1,表明为表1中的实体的属性检索的查询类型,逻辑语句输出该实体的属性的属性值;如果大于1,表明为表1中的实体属性的多跳检索,关联多个实体,找到实体名的属性1的属性值,判断该属性1的属性值是否对应另一个实体,如果对应,则找到对应的实体,检索出对应的实体的属性2的属性值,如果还有需要检索的属性,则采用相同的方法继续判断对应的实体及属性值,直到逻辑语句输出最后一个属性的属性值。
可见,在威胁情报知识图谱的基础上,通过知识图谱将各个实体进行关联,能够有效地在检索的过程中找到实体、实体的属性、实体的多个关联属性,进而可以快速、有效、高效地获取威胁情报的详细信息,及时为网络安全的预防工作提供保障。
根据本发明的第四个具体实施方式,本发明提供一种电子设备,如图6所示,图3是根据一示例性实施例示出的一种电子设备的框图。
下面参照图6来描述根据本申请的这种实施方式的电子设备800。图6显示的电子设备800仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:至少一个处理单元810、至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、显示单元840等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书中描述的根据本申请各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图1或图3中所示的步骤。
所述存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
所述存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备800’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备800交互的设备通信,和/或该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器860可以通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。
因此,根据本发明的第五个具体实施方式,本发明提供一种计算机可读介质。如图7所示,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现第一个具体实施方式或第二个具体实施方式的功能。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本发明实施例的方法。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种获取威胁情报详细信息的方法,其特征在于,包括以下步骤:
获取威胁情报数据,所述威胁情报数据包括多类实体集,每类实体集包括多个实体;所述多类实体集包括:恶意组织、恶意软件、攻击方式、工具、应对措施、数据源和数据组件;恶意组织通过使用恶意软件采用攻击方式进行恶意攻击,恶意组织还使用工具采用攻击方式进行攻击,针对于攻击方式,通过应对措施进行应对;
每个实体包括多个基本属性和多个关联属性;每个基本属性和关联属性均包括属性名和属性值,每个关联属性的属性值为另一个实体;将每个实体的基本属性和关联属性存入一个实体文档;
建立三元组列表,三元组列表包括多个三元组,每个三元组包括实体、属性名及属性值;
将三元组列表和每个实体文档转换格式,导入搜索服务器,形成威胁情报知识图谱;
向威胁情报知识图谱输入自然语言问句;
对该自然语言问句进行分词,得到一个或多个信息分词;
根据一个或多个信息分词从威胁情报知识图谱中获取查询结果;
所述根据一个或多个信息分词从威胁情报知识图谱中获取属性值的方法包括:
每个信息分词包括实体的名称、属性名或属性值;
判断信息分词为实体的名称、属性名还是属性值;
将判断的信息分词从威胁情报知识图谱中获取查询结果;
所述将判断的信息分词从威胁情报知识图谱中获取查询结果的方法包括:
如果信息分词为一个且包括实体的名称,则返回该实体的所有属性名和属性值;
如果信息分词为两个,且第一个信息分词包括实体的名称,第二个信息分词包括属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的属性名,如果包含,则返回对应的属性值;
如果信息分词为三个以上,且第一个信息分词包括实体名称,其余的信息分词包括属性名,则先检索该实体,判断该实体的所有属性名中是否包含所检索的第一个属性名,如果包含,找到第一个属性名对应的属性值,判断是否存在以第一个属性名对应的属性值为名称的实体,如果存在,以第一个属性名对应的属性值为实体的名称检索对应的实体,再判断检索结果是否包含第二个属性名,如果包含,找到第二个属性名对应的属性值,采用相同的方法找到第N个属性名对应的属性值,直到判断到最后一个属性名,返回最后一个属性名对应的属性值;N为大于或等于2的自然数。
2.根据权利要求1所述的获取威胁情报详细信息的方法,其特征在于,还包括:
所述导入搜索服务器后,建立同义词扩展库并关联搜索服务器。
3.根据权利要求2所述的获取威胁情报详细信息的方法,其特征在于,所述建立同义词扩展库的方法包括:
抽取所有实体的名称以及实体所包含的属性名;每个实体的基本属性均包括实体的名称;
找到实体的名称和实体所包含的属性名对应的同义词;
将同义词新增为对应实体的名称或实体所包含的属性名的扩展名。
4.根据权利要求3所述的获取威胁情报详细信息的方法,其特征在于,所述找到实体的名称和实体所包含的属性名对应的同义词的方法包括:
采用人工的方式或相似度计算的方法找到实体的名称和实体所包含的属性名对应的同义词。
5.根据权利要求1所述的获取威胁情报详细信息的方法,其特征在于,所述获取威胁情报数据的方法包括:
获取ATT&CK数据和ThreatGroupCards数据;
ATT&CK数据基于stix格式录入;
将ThreatGroupCards数据与ATT&CK数据数据相同的部分合并,不同的部分以stix格式录入;
补全stix格式中ThreatGroupCards数据未填充的部分。
6.根据权利要求1所述的获取威胁情报详细信息的方法,其特征在于,所述判断信息分词为实体的名称、属性名还是属性值的方法包括:
先判断是否为属性名,在字典记录知识库中通过匹配的方法找出是否有属性名,若有,则为属性名;所述字典记录知识库中存储有所有属性名;
再判断是否为实体的名称,将信息分词在威胁情报知识图谱中进行查询,判断是否存在以该信息分词为实体的名称的实体文档,若有,则为实体的名称;
接着判断是否为属性值,采用模糊匹配的方法或采用分词后根据n-gram模型通过Elasticsearch进行检索的方法判断信息分词是否为属性值,如果为属性值,统计该属性值对应的属性名,用该属性值对应的最频繁使用的属性名作为补全的属性名。
7.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
8.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210942932.2A CN115186109B (zh) | 2022-08-08 | 2022-08-08 | 威胁情报知识图谱的数据处理方法、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210942932.2A CN115186109B (zh) | 2022-08-08 | 2022-08-08 | 威胁情报知识图谱的数据处理方法、设备、介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115186109A CN115186109A (zh) | 2022-10-14 |
CN115186109B true CN115186109B (zh) | 2023-05-05 |
Family
ID=83522845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210942932.2A Active CN115186109B (zh) | 2022-08-08 | 2022-08-08 | 威胁情报知识图谱的数据处理方法、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115186109B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115982389B (zh) * | 2023-03-10 | 2023-05-30 | 北京国华众联科技有限公司 | 知识图谱生成方法、装置和设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717049A (zh) * | 2019-08-29 | 2020-01-21 | 四川大学 | 一种面向文本数据的威胁情报知识图谱构建方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959328B (zh) * | 2017-05-27 | 2021-12-21 | 株式会社理光 | 知识图谱的处理方法、装置及电子设备 |
AU2018241092B2 (en) * | 2017-10-04 | 2019-11-21 | Accenture Global Solutions Limited | Knowledge enabled data management system |
US20220114193A1 (en) * | 2018-12-10 | 2022-04-14 | Cambridge Blockchain, Inc. | Systems and methods for data management |
CN111061841B (zh) * | 2019-12-19 | 2023-10-27 | 京东方科技集团股份有限公司 | 知识图谱的构建方法及装置 |
CN111353030B (zh) * | 2020-02-26 | 2023-04-28 | 陕西师范大学 | 基于旅游领域知识图谱的知识问答检索方法及装置 |
CN111475623B (zh) * | 2020-04-09 | 2023-08-22 | 北京北大软件工程股份有限公司 | 基于知识图谱的案件信息语义检索方法及装置 |
KR102452123B1 (ko) * | 2020-12-23 | 2022-10-12 | 한국전자통신연구원 | 비정형 사이버 위협 정보 빅데이터 구축 장치, 사이버 위협 정보 빅데이터 구축 및 연관성 분석 방법 |
CN113989019A (zh) * | 2021-10-27 | 2022-01-28 | 平安银行股份有限公司 | 识别风险的方法、装置、设备及存储介质 |
-
2022
- 2022-08-08 CN CN202210942932.2A patent/CN115186109B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717049A (zh) * | 2019-08-29 | 2020-01-21 | 四川大学 | 一种面向文本数据的威胁情报知识图谱构建方法 |
Non-Patent Citations (1)
Title |
---|
面向网络空间安全情报的知识图谱综述;董聪;姜波;卢志刚;刘宝旭;李宁;马平川;姜政伟;刘俊荣;;信息安全学报(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115186109A (zh) | 2022-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9754207B2 (en) | Corpus quality analysis | |
US8370278B2 (en) | Ontological categorization of question concepts from document summaries | |
US8302197B2 (en) | Identifying data associated with security issue attributes | |
CN108171073B (zh) | 一种基于代码层语义解析驱动的隐私数据识别方法 | |
US8250651B2 (en) | Identifying attributes of aggregated data | |
CN109885698A (zh) | 一种知识图谱构建方法及装置、电子设备 | |
Peng et al. | Astroturfing detection in social media: a binary n‐gram–based approach | |
US7991760B2 (en) | Constructing a domain-specific ontology by mining the web | |
US8386238B2 (en) | Systems and methods for evaluating a sequence of characters | |
CN111767716A (zh) | 企业多级行业信息的确定方法、装置及计算机设备 | |
US10558931B2 (en) | Determining comprehensiveness of question paper given syllabus | |
Mahmood et al. | Query based information retrieval and knowledge extraction using Hadith datasets | |
CN110276009B (zh) | 一种联想词的推荐方法、装置、电子设备及存储介质 | |
Perera et al. | Cyberattack prediction through public text analysis and mini-theories | |
Jo et al. | GapFinder: Finding inconsistency of security information from unstructured text | |
CN115186109B (zh) | 威胁情报知识图谱的数据处理方法、设备、介质 | |
CN116340989A (zh) | 一种数据脱敏方法、装置、电子设备及存储介质 | |
CN111552792A (zh) | 一种信息查询方法、装置、电子设备及存储介质 | |
US11386132B2 (en) | System and method for retrieving results and responses with context based exclusion criteria | |
Xiao | Towards a two-phase unsupervised system for cybersecurity concepts extraction | |
CN115859273A (zh) | 一种数据库异常访问的检测方法、装置、设备及存储介质 | |
CN113312486B (zh) | 一种信号画像构建方法装置、电子设备、存储介质 | |
Gutiérrez et al. | Contextminer: Mining contextual features for conceptualizing knowledge in security texts | |
CN114742051A (zh) | 日志处理方法、装置、计算机系统及可读存储介质 | |
CN115310514A (zh) | 海量数据中识别目标类型数据的方法及装置 |
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 |