BERT+CRF模型的漏洞信息结构化抽取方法

2021-06-03 06:11云南电网有限责任公司曲靖供电局朱家山
电子世界 2021年9期
关键词:字符结构化漏洞

云南电网有限责任公司曲靖供电局 朱家山

漏洞攻击是信息安全领域的典型事件,全球范围内,每年因漏洞攻击带来的损失不计其数,甚至产生颠覆性的破坏。2015年,攻击者通过线上变电站攻击及线下的电力客服中心进行电话DDoS攻击导致乌克兰首都及西部地区140万居民遭遇了长达数小时的大规模停电,造成了巨大的经济损失。在电网信息化转型的背景下,各供电企业加大了信息化建设及改造升级的力度,随着信息系统数量及种类增多,系统之间的信息资源共享使得各系统之间交互更加频繁,系统的关联关系呈现复杂化特征,为电力企业的信息安全管理带来极大的挑战。现阶段,电力企业高度依赖于信息系统,电力系统已经演变成集营销管理系统、计量计费系统、电力MIS系统、电力自动化系统等的电力资源整合系统,信息系统安全是保障电力系统安全、稳定运行的基础。

本文针对近年来的漏洞信息抽取技术进行了深入的研究,提出了一种基于BERT+CRF模型的漏洞信息结构化抽取的方法,采用人工智能深度学习方法进行建模,基于序列标注模型实现漏洞关键信息抽取,解决了现有人工手段抽取漏洞信息中人力投入大、漏洞信息精确度不高等问题。

1 设计方案

通过从全球范围内权威的漏洞信息共享平台获取漏洞数据,对各平台发布的漏洞信息构成要素进行分析,整合各漏洞信息共享平台的属性集合,去除漏洞集合中存在冗余的属性、对相似性属性及同类不同名属性进行统一命名,构建漏洞信息本体模型。针对漏洞信息本体模型制定标注方案,从漏洞数据集中划分出部分数据集,进行序列标注,生成模型训练语料。基于训练语料及序列标注模型构建漏洞信息结构化抽取模型,通过漏洞信息结构化抽取模型从漏洞数据集中抽取漏洞关键信息要素。基于标注的语料和漏洞本体模型设计漏洞关键信息抽取模型的性能评估方法,对漏洞信息抽取模型进行性能评估,并基于评估结果改进及优化模型。根据抽取到的漏洞关键信息及漏洞本体模型构建结构化的漏洞数据库。

2 关键技术

2.1 漏洞信息本体模型构建

构建漏洞信息本体模型的过程中,需要从漏洞描述、网络安全公告等文本信息中抽取出相关的实体、建立各实体之间的关联关系。在进行实体的抽取过程中,对于结构化数据,需要通过领域本体的抽取方式进行本体抽取,对于非结构化数据需要借助信息抽取技术从非结构化文本中抽取结构化信息。通过领域本体方法进行本体的抽取过程中首先对领域的术语及术语之间的关系进行整合,构建术语表,将术语表中的术语作为本体的概念集合,并确定概念之间的关系,将术语表直接转换为本体集合。对于非结构化数据的信息抽取技术中,需要用到命名实体识别及实体关系抽取技术,一种普遍的做法是通过人工预先标注数据,利用标注好的数据集训练本体模型,利用训练好的本体模型从非结构化文本中提取命名实体。

具体实施步骤如下:(1)选取权威漏洞信息共享平台,获取漏洞信息,构建本体漏洞概念的属性集合,对各个漏洞库的属性集合进行整合,剔除冗余属性,对相似性属性及同类属性进行合并,定义漏洞必要属性、可选属性、关键属性、非关键属性,其中必要属性指指漏洞信息中应包括的最少属性;可选属性指漏洞的属性中除了必要属性之外的属性;关键属性指描述和解决该漏洞所需要的关键要素;非关键属性指漏洞属性中除了关键属性之外的属性。必要属性:本地编号、漏洞名称、危害等级、发布时间、漏洞影响的实体;可选属性:漏洞公告、参考网址、补丁、厂商、威胁类型、漏洞来源;关键属性:漏洞名称、漏洞简介、危害等级、威胁类型、发布时间、漏洞影响的实体、漏洞补丁;非关键属性:厂商、漏洞来源、参考网址。(2)构建漏洞实体词典,基于CRF模型引入词典特征构建漏洞命名实体识别器,识别漏洞描述中的相关漏洞概念属性。(3)对概念本体的完整性、正确性及可扩展性进行评估,保障每个概念定义清晰,不存在歧义,满足完整性需求。

表1 漏洞描述文本对应的序列标注

2.2 基于BERT+CRF模型的漏洞抽取

从漏洞信息数据集中筛选部分样本进行序列标注,采用BIO标注法,将单个字符作为最小的标注粒度,标注每个字符对应的具体类别,其中类别标签中B开头的表示词的起始位置,I开头表示词的所有字符中除了起始位置之外的位置,O开头表示无关字符。标签中B、I、O之后的表示字符对应的类别,以“-”隔开,其中“entity”表示漏洞影响的实体名称,“version-i”表示离散的实体版本号,“version-b”表示连续的版本号的开始版本号,“version-n”表示连续的版本号的结束版本号,“type”表示漏洞影响的类型等。例如漏洞信息短文本描述如下:“该漏洞影响了Pillow的4.0.1和5.1.2之间的版本”,漏洞描述文本对应的序列标注如表1所示。

图1 BERT+CRF模型结构图

基于标注的数据训练漏洞关键信息抽取模型,采用BERT+CRF模型结构,首先通过BERT模型对漏洞描述文本进行特征提取及编码,获得文本对应的字符向量,将之映射为CRF层的发射概率,经过CRF层输出每个字符对应的类别概率,最后通过字符及字符的位置关系及类别得到该文本中包含的漏洞关键信息,BERT+CRF模型结构如图1所示。

如图1所示,w表示漏洞描述文本,通过将漏洞描述文本进行字符分割处理,分割成单个字符输入至BERT模型中,经过BERT模型训练,每个字符得到一个对应的编码向量,通过将向量降维到与标签类别数目相同的维度之后,将向量中的值压缩至0-1之间作为CRF层的发射概率,CRF层拟合之后输出每个字符对应的标签概率P,最后根据输出结果与定义的标签进行合并,获得漏洞关键信息。

漏洞关键信息抽取模型构建完成后,需要从标注的漏洞数据中随机抽取出一部分未参与训练的样本,用模型抽取出关键信息与标注结果对比,设计对比的方法,计算出漏洞抽取模型的精度。

最后,将利用模型抽取到的非结构漏洞关键信息与原来已经存在的结构化信息进行融合,结合构建的漏洞本体模型中定义的属性及逻辑关系构建电力企业内部漏洞数据库,支撑信息安全管理工作。

结语:本文分析了电力企业在信息安全领域面临的严峻形势,提出了一种基于BERT+CRF的漏洞信息结构化抽取方法,通过从全球权威的漏洞信息共享平台获取漏洞描述文本信息,采用基于序列标注的方法对漏洞描述中的关键信息进行抽取,并结合漏洞本体构建电力企业内部漏洞数据库,形成常态化的漏洞信息收集、分析及通报工作机制,提升电网信息系统的安全防范能力及信息安全水平。

猜你喜欢
字符结构化漏洞
漏洞
促进知识结构化的主题式复习初探
结构化面试方法在研究生复试中的应用
左顾右盼 瞻前顾后 融会贯通——基于数学结构化的深度学习
字符代表几
一种USB接口字符液晶控制器设计
HBM电子称与西门子S7-200系列PLC自由口通讯
消失的殖民村庄和神秘字符
三明:“两票制”堵住加价漏洞
漏洞在哪儿