[发明专利]一种面向Java源码的语句级模式探索的漏洞检测方法有效
申请号: | 202011644114.1 | 申请日: | 2020-12-31 |
公开(公告)号: | CN112668013B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 张海宾;毕艺菲;孙文;李皓;秦溢凡 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F16/35;G06N3/0442;G06N3/0455;G06N3/048;G06N3/08 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 范巍 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 java 源码 语句 模式 探索 漏洞 检测 方法 | ||
1.一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于,包括以下步骤:
步骤1:将Java文件上传到语句级漏洞检测框架ISVSF,语句级漏洞检测框架ISVSF中的方法表示生成器提取全部方法,然后将方法抽象为控制流抽象语法树CFAST;
步骤2:方法表示生成器通过遍历CFAST内的basic子树/控制流子树得到每个基本子块/控制流子块的句子;
步骤3:用基于Transformer的双向编码器将每个基本子块/控制流子块的句子嵌入到句子向量中;
步骤4:漏洞分类器从方法表示生成器接收方法表示,首先统一长度,然后漏洞分类器计算条件概率,最后根据阈值进行分类;
步骤5,漏洞分类器通过分类结果预测方法是否存在漏洞的,并且输出预测结果。
2.根据权利要求1所述的一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于:方法表示生成器为句子级方法表示生成器;句子级方法表示生成器是将源代码转换为句子向量,使源代码能够与分类器交互。
3.根据权利要求1所述的一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于:具体的为每种方法生成CFAST,并使CFAST中的每一个子树与方法中的一个子块匹配;然后依次遍历CFAST的子树,将每一种方法抽象为一个句子集,句子是CFAST遍历序列中子块的对等物。
4.根据权利要求1所述的一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于,漏洞分类器为BiLSTM分类器,是以数值向量作为输入,生成的句子向量表示句子的句法、语义和逻辑关系。
5.根据权利要求1所述的一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于,漏洞分类器采用序列网络来发现和吸收人类编写的代码中存在的漏洞模式,然后将其概率推理得到的结果转移到新的代码中,实现了语句级模式探索Java源码漏洞的功能。
6.根据权利要求1所述的一种面向Java源码的语句级模式探索的漏洞检测方法,其特征在于,序列网络为RNN或LSTM。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011644114.1/1.html,转载请声明来源钻瓜专利网。