[发明专利]一种指针修改影响的分析方法和系统有效
申请号: | 201710189131.2 | 申请日: | 2017-03-27 |
公开(公告)号: | CN107085533B | 公开(公告)日: | 2019-09-06 |
发明(设计)人: | 马森;岳贯集;张世琨;高庆 | 申请(专利权)人: | 北京北大软件工程股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 汤财宝 |
地址: | 100081 北京市海淀区北四环西路67号大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种指针修改影响的分析方法和系统,所述方法包括:在程序代码中查找该语句中变量的等价变量,并查找该等价变量所有的定义点,构成分析结果集合;基于定义点、语句以及程序入口的关系,获得对应该定义点的多个路径条件;以及判断所有所述路径条件是否可同时满足,若不可同时满足,则将该定义点从所述分析结果集合中剔除。本发明提高结果的精度,做到了部分路径敏感以及流敏感,使采用该分析算法的静态代码缺陷检测结果更加精确。 | ||
搜索关键词: | 一种 指针 修改 影响 分析 方法 系统 | ||
【主权项】:
1.一种指针修改影响的分析方法,其特征在于,包括:S1、在程序代码中查找语句中变量的等价变量,并查找该等价变量所有的定义点,构成分析结果集合;S2、基于定义点、语句以及程序入口的关系,获得对应该定义点的多个路径条件;以及S3、判断所有所述路径条件是否可同时满足,若不可同时满足,则将该定义点从所述分析结果集合中剔除;其中,所述路径条件包括:从所述定义点至该语句的路径条件;从所述定义点的程序的入口至所述定义点的路径条件;从所述语句的程序的入口至该语句的路径条件;以及从使不同变量产生等价关系的控制流语句的程序入口至该控制流语句的路径条件;所述S2包括:从每一个路径条件的终点进行逆向递归搜索,获得从起点至终点间的所有路径,对具有相同路径的路径条件进行&&操作,再对不同路径的路径条件进行||操作,得到该条件;其中,所述递归搜索在遇到起点、遇到覆盖起点的定义点或搜索到的语句没有前驱语句时停止。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京北大软件工程股份有限公司,未经北京北大软件工程股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710189131.2/,转载请声明来源钻瓜专利网。