赞
踩
杨伊等 来源:计算机研究与发展
目录
据2021年CVE漏洞趋势安全报告,当前漏洞类型占比最大的5类漏洞分别是代码执行、拒绝服务、溢出、跨站脚本以及信息获取。基于自然语言处理技术实现漏洞检测的研究工作按照数据类型的不同进行分类,可分为官方文档、代码、代码注释以及漏洞相关信息。
注: 四大信息安全高水平会议:USENIX Security,IEEE S&P, ACM CCS,NDSS。
在利用自然语言处理技术辅助漏洞检测研究的时候,通常是NLP解析器使用标准NLP技术对预处理文本中的每一条语句进行分解,依次利用依存语法解析、词嵌入、命名实体识别、词性标注、语义消歧等操作对语句进行处理。
以上各步骤构成了自然语言处理的预训练内容。当前预训练语言模型被划分为词嵌入模型(Word3Vec,GloVe,ElMo)和多用途的NLP模型(Transformer和BERT)。
词嵌入模型:通过随机值初始化词表示,并通过应用连续词袋或跳过词将词上下文的联合概率分布用作其输入模型,然后在神经网络的训练过程中利用这种分布,其中单词向量会不断更新以使联合概率最大化。训练的结果确保相关词被赋予其相似上下文的近似向量,而不相关的词被映射到不同的向量中,而词与词之间的语义差异通常通过向量之间的余弦距离进行测量。ElMo模型能够根据上下文推断每个词对应的词向量,解决多义词问题。
预训练模型Transformer的核心就是注意力机制,该模型完全依靠注意力机制绘制输入和输出之间的全局依赖关系,其本质上是一种 Encoder-Decoder 的结构,以 3 种不 同 的 方 式 使 用 多 头 注 意 力 机 制。
基于transfomer模型Encoder结构的模型BERT,预训练部分与Word2Vec和ELMo相似。BERT预训练模型可以使一个词在不同的语境下生成不同的词向量。
漏洞:网络和安全的根源,是信息系统的硬件、软件、操作系统、网络协议、数据库等在设计上、实现上出现的可以被攻击者利用的错误、缺陷和疏漏。
漏洞攻击:
漏洞检测:对信息系统所用软硬件进行研究,找出存在的可能威胁信息系统安全的薄弱环节。
静态检测技术:在不执行应用程序源代码的情况下,从语法和语义上理解程序的行为,直接分析被检测程序的特征,寻找可能导致错误的异常,包括潜在的安全违规、运行时错误以及逻辑不一致等情况。基于源代码的静态检测技术主要有数据流分析、抽象解释和符号分析。
模糊测试:本质是向程序中插入异常的、随机的输入来触发程序中不可预见的代码执行路径或漏洞。分为基于路径覆盖率的模糊测试方法和导向型模糊测试方法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。