买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于特征提取的Rust程序缺陷自动检测方法及系统_中国人民解放军国防科技大学_202310947118.4 

申请/专利权人:中国人民解放军国防科技大学

申请日:2023-07-31

公开(公告)日:2023-12-12

公开(公告)号:CN116680705B

主分类号:G06F21/57

分类号:G06F21/57

优先权:

专利状态码:有效-授权

法律状态:2023.12.12#授权;2023.09.19#实质审查的生效;2023.09.01#公开

摘要:本发明公开了一种基于特征提取的Rust程序缺陷自动检测方法及系统,通过分析Rust中有限类不安全Rust的主要使用场景,静态分析不安全代码本质不安全原因,构成每类不安全操作数据集,作为特征提取的输入;对不安全Rust不安全具体原因、来源和使用场景进行分析,构建包含每类不安全操作的缺陷数据集;对缺陷数据集中的不安全操作的词法规则进行分析,获取每类不安全Rust操作的关键字、函数名和运算符信息;根据有限类不安全Rust的特征,设计基于特征识别的缺陷检测。本发明有效的降低假阳性和假阴性的概率,并且自动化技术有效的提高了缺陷检测的效率。

主权项:1.一种基于特征提取的Rust程序缺陷自动检测方法,其特征在于,包括以下步骤:静态分析不安全Rust:首先分析Rust中有限类不安全Rust的主要使用场景,静态分析不安全代码本质不安全原因,最后构成每类不安全操作数据集,作为特征提取的输入;不安全Rust特征提取:通过对不安全Rust不安全具体原因、来源和使用场景进行分析,构建包含每类不安全操作的缺陷数据集;对所述缺陷数据集中的不安全操作的词法规则进行分析,获取每类不安全Rust操作的关键字、函数名和运算符信息;自动化检测与优化设计:根据有限类不安全Rust的特征,设计基于特征识别的缺陷检测;将操作系统的源代码作为算法的输入,使用正则表达式来分类、标记和提取每一种不安全操作,输出包含具体缺陷信息的缺陷报告;所述不安全Rust特征提取的步骤包括:对于五类不安全Rust操作都需要使用不安全关键字进行包裹;对于解引用裸指针,使用*constT、*mutT或者封装好的方法来创建裸指针,且创建裸指针是安全操作,只有对裸指针的解引用才是不安全操作;对于不安全函数,使用特征为:UnsafefnName{},或者调用使用extern函数调用外部代码;对于不安全特征,使用特征为:UnsafetraitName{},或者UnsafeimplNameforT{};对于联合而言,定义联合类型是安全的,不安全特征是对联合字段的访问;所述自动化检测与优化设计的步骤包括:根据有限类不安全Rust的特征,设计基于特征识别的缺陷检测;扫描并读取系统所有字符流文件,根据标记的每类缺陷特征进行正则匹配;检测结束生成日志,所述日志包含每一类缺陷的具体信息;所述扫描并读取系统所有字符流文件,根据标记的每类缺陷特征进行正则匹配的步骤包括:如果匹配到Rust程序缺陷,则通过不安全操作左括号的出现位置,将左括号压入栈中,并找出匹配的右括号,通过左右括号的位置差,提取不安全操作的具体内容;如果没有匹配到Rust程序缺陷,则扫描下一个字符流文件,直至系统全部检测结束;所述对于联合而言,定义联合类型是安全的,不安全特征是对联合字段的访问的步骤包括:根据数据集和不安全的词法规则进行提取,得到每类不安全Rust缺陷特征信息。

全文数据:

权利要求:

百度查询: 中国人民解放军国防科技大学 基于特征提取的Rust程序缺陷自动检测方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术