[发明专利]软件缺陷检测方法及装置有效
申请号: | 201410196027.2 | 申请日: | 2014-05-09 |
公开(公告)号: | CN103970657B | 公开(公告)日: | 2017-02-15 |
发明(设计)人: | 杨学红 | 申请(专利权)人: | 中国联合网络通信集团有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京同立钧成知识产权代理有限公司11205 | 代理人: | 刘芳 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 缺陷 检测 方法 装置 | ||
技术领域
本发明实施例涉及计算机软件技术,尤其涉及一种软件缺陷检测方法及装置。
背景技术
随着科学技术的发展,软件已经成为影响国民经济、军事、政治乃至社会生活的重要因素,而软件缺限的存在容易导致软件产品在某种程度上不能满足用户的需求,对软件质量有着重要的影响。
所谓软件缺陷,即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺限。目前,软件缺陷的检测方法有很多,最常见的是静态分析法,即在不实际执行程序的情况下,对被测试程序源代码进行扫描,提取程序关键语法,解释其语义,理解程序行为,根据预先设定的漏洞特征、安全规则等检测程序中所存在的缺陷。
但是,上述静态检测方法,一般采用将缺陷所在的位置显示给用户,以供用户确认是否是误报的缺陷,并针对非误报的缺陷进行修改,当用户再次扫描源代码时或者对后续版本的源代码进行扫描时,原来已确认后的误报缺陷会再次被检测出来,这样就需要用户对已确认过的误报缺陷再进行一次确认,致使用户做大量的重复性工作,给用户带来不便。
发明内容
本发明提供一种软件缺陷检测方法及装置,用以解决现有技术中当用户再次扫描源代码时或者对后续版本的源代码进行扫描时,原来已确认后的误报缺陷会再次被检测出来,这样就需要用户对已确认过的误报缺陷再进行一次确认,致使用户做大量的重复性工作,给用户带来不便的缺陷。
本发明提供一种软件缺陷检测方法,包括:
扫描源代码;
检测所述源代码中是否存在缺陷;
若所述源代码中存在缺陷,则确定所述缺陷是否为已确认过的误报缺陷;
若所述缺陷不是已确认过的误报缺陷,则将所述缺陷显示给用户,以供用户进行确认或修改;
若所述缺陷是已确认过的误报缺陷,则拒绝将所述缺陷显示给用户。
本发明还提供一种软件缺陷检测装置,包括:
扫描模块,用于扫描源代码;
检测模块,用于检测所述源代码中是否存在缺陷;
确定模块,用于若所述源代码中存在缺陷,则确定所述缺陷是否为已确认过的误报缺陷;
显示模块,用于若所述缺陷不是已确认过的误报缺陷,则将所述缺陷显示给用户,以供用户进行确认或修改;
拒绝模块,用于若所述缺陷是已确认过的误报缺陷,则拒绝让所述显示模块将所述缺陷显示给用户。
本发明通过确定所述缺陷是否为已确认过的误报缺陷,将未确认过的缺陷显示给用户,以供用户进行确认或修改,将已确认过的误报缺陷屏蔽掉,不再显示给用户,这样在后续的检测过程中用户就不用再对已确认过的误报缺陷进行重复确认,可以大大减少用户的工作量,减少用户的负担。
附图说明
图1为本发明提供的软件缺陷检测方法实施例一流程示意图;
图2为本发明提供的软件缺陷检测方法实施例二流程示意图;
图3为本发明提供的软件缺陷检测装置实施例一结构示意图;
图4为本发明提供的软件缺陷检测装置实施例二结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的软件缺陷检测方法实施例一流程示意图,如图1所示,具体包括如下步骤:
S101、扫描源代码;
需要说明的是,本实施例的执行主体为图3和图4所示的软件缺陷检测装置,在开始测试被测软件存在的缺陷之前,需要获取到软件的源程序代码,例如,可以采用用户输入或上传的方式。在获取到软件的源程序代码之后,则开始逐行扫描源代码,以检测所述源代码中是否存在缺陷。
S102、检测所述源代码中是否存在缺陷;
具体来说,本实施例检测所述源代码中是否存在缺陷可以采用现有技术,例如静态检测法,直接分析源代码,通过词法分析、语法分析和静态语义分析,检测源代码中存在的缺陷,上述方法均为现有技术,这里不再累述。若检测到所述源代码中存在的缺陷,例如,每检测到一个缺陷,则执行一次步骤S103,或者,等检测完源代码中存在的所有缺陷之后,执行步骤S103,若检测到所述源代码中未存在缺陷,则结束本次检测。
S103、确定所述缺陷是否为已确认过的误报缺陷;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国联合网络通信集团有限公司,未经中国联合网络通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410196027.2/2.html,转载请声明来源钻瓜专利网。