[发明专利]一种开源软件漏洞分析方法、装置和存储介质有效
申请号: | 201810415008.2 | 申请日: | 2018-05-03 |
公开(公告)号: | CN108763928B | 公开(公告)日: | 2020-10-02 |
发明(设计)人: | 王博;崔宝江;吴倩;杨俊;张家旺;林星辰;宋绪言 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/57 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 苏胜 |
地址: | 102200*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 漏洞 分析 方法 装置 存储 介质 | ||
本申请提供了一种开源软件漏洞分析方法、装置和存储介质,涉及开源软件漏洞分析技术领域,该方法包括:获取待测软件中的开源代码;将所述开源代码的源文件集与漏洞库中的源码型漏洞进行同源性比对检测;输出比对检测结果。本申请实施例提供的一种开源软件漏洞分析方法、装置和存储介质,将待测软件中的开源代码进行同源性比对检测,可以对待测软件中的开源代码是否含有漏洞实现准确,高效的识别。
技术领域
本申请涉及网络安全技术领域,具体而言,涉及一种开源软件漏洞分析方法、装置和存储介质。
背景技术
随着互联网的发展,资源的共享日益增多,人们可以得到的资源也越来越多,但是,随着软件开发的门槛越来越低,大量的初级开发人员往往未对开源代码的安全性进行检测就将其发布到开源社区中,存在的安全漏洞开源代码就成为了潜在的隐患,而且,一般而言,在开发人员引用开源代码时,对其所引用的开源代码并不加以说明,甚至会对开源代码做一些不影响代码功能的修改,比如修改函数名或者变量名、打乱语句顺序及类型重定义等等,使得漏洞的识别变得更加困难。现有技术中通常使用基于缺陷模式的检测技术将漏洞特征与待测软件中的源代码进行匹配,进而实现对待测软件的漏洞识别。
发明内容
有鉴于此,本申请的目的在于提供一种开源软件漏洞分析方法、装置和存储介质,可以实现准确,高效的漏洞识别。
第一方面,本申请实施例提供一种开源软件漏洞分析方法,其中,方法包括:
获取待测软件中的开源代码;
将开源代码的源文件集与漏洞库中的源码型漏洞进行同源性比对检测;
输出比对检测结果。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,漏洞库中包括源码型漏洞和库类型漏洞;将开源代码的源文件集与漏洞库中的源码型漏洞进行同源性比对检测之前,还包括:
将开源代码预处理为源文件集和库文件集;
方法还包括:
将开源代码中的库文件集与漏洞库中的库类型漏洞进行组件引用检测;
输出比对检测结果,包括:
输出同源性比对检测结果和组件引用检测结果;
其中,组件引用检测包括:判断库文件集中含有库类型漏洞的库文件是否被使用。
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,其中,将开源代码预处理为源文件集和库文件集,包括:
提取开源代码中的至少一个源文件、至少一个库文件和至少一个配置文件;
将至少一个源文件组成源文件集;
将至少一个库文件和至少一个配置文件组成库文件集。
结合第一方面的第二种可能的实施方式,本申请实施例提供了第一方面的第三种可能的实施方式,其中,将至少一个库文件和至少一个配置文件组成库文件集包括:
通过配置文件中的包管理工具,获取第三方包;
将第三方包和库文件组成库文件集。
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第四种可能的实施方式,其中,同源性比对检测包括:
若将源文件集与源码型漏洞进行文本比对后,未发现源码型漏洞,则将源文件集与源码型漏洞进行Token标识比对,若发现源码型漏洞,则将源文件集进行二次分析;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810415008.2/2.html,转载请声明来源钻瓜专利网。