预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN115391785A(43)申请公布日2022.11.25(21)申请号202210988093.8(22)申请日2022.08.17(71)申请人支付宝(杭州)信息技术有限公司地址310000浙江省杭州市西湖区西溪路556号8层B段801-11(72)发明人吴荣鑫陈豪尔黄嘉峰王超范刚(74)专利代理机构北京君慧知识产权代理事务所(普通合伙)11716专利代理师肖鹏(51)Int.Cl.G06F21/57(2013.01)权利要求书4页说明书14页附图6页(54)发明名称一种软件漏洞的风险检测方法、装置以及设备(57)摘要本说明书实施例公开了一种软件漏洞的风险检测方法、装置以及设备。方案包括:获取待检测软件的代码,并提取所述代码中的API;根据所述代码中的API,在设定的漏洞数据库中进行查找,以确定在所述代码中的API中可能存在风险的目标API,并获取所述漏洞数据库中对应于所述目标API的漏洞API,以及对所述漏洞API修复后得到的已修复API;提取所述漏洞API的代码与所述已修复API的代码之间的差异AST特征,以及对应于所述差异AST特征的上下文AST特征;对所述目标API提取相应的AST特征,以与所述差异AST特征和所述上下文AST特征进行匹配;根据所述匹配的结果,确定所述目标API是否存在风险。CN115391785ACN115391785A权利要求书1/4页1.一种软件漏洞的风险检测方法,包括:获取待检测软件的代码,并提取所述代码中的应用程序编程接口API;根据所述代码中的API,在设定的漏洞数据库中进行查找,以确定在所述代码中的API中可能存在风险的目标API,并获取所述漏洞数据库中对应于所述目标API的漏洞API,以及对所述漏洞API修复后得到的已修复API;提取所述漏洞API的代码与所述已修复API的代码之间的差异抽象语法树AST特征,以及对应于所述差异AST特征的上下文AST特征;对所述目标API提取相应的AST特征,以与所述差异AST特征和所述上下文AST特征进行匹配;根据所述匹配的结果,确定所述目标API是否存在风险。2.如权利要求1所述的方法,所述根据所述匹配的结果,确定所述目标API是否存在风险,具体包括:根据所述匹配的结果,确定所述目标API是否为尚未修复的漏洞API;若是,且判断调用所述待检测软件的项目工程存在至少一条到所述目标API的调用链,则确定对于所述项目工程,所述目标API存在调用风险。3.如权利要求1所述的方法,所述提取所述漏洞API的代码与所述已修复API的代码之间的差异抽象语法树AST特征,具体包括:对所述漏洞API的代码的AST和所述已修复API的代码的AST进行比较,获得反映对应的修复变化的删除子树结点集合和添加子树结点集合;根据所述删除子树结点集合和所述添加子树结点集合,确定所述漏洞API的代码与所述已修复API的代码之间的差异抽象语法树AST特征。4.如权利要求3所述的方法,所述根据所述删除子树结点集合和所述添加子树结点集合,确定所述漏洞API的代码与所述已修复API的代码之间的差异抽象语法树AST特征,具体包括:对于所述删除子树结点集合和添加子树结点集合中的多个结点,追溯所述多个结点的公共祖先结点;判断所述公共祖先结点是否表示所述多个结点处于同一程序语句中;若是,则以所述公共祖先结点作为根结点,生成包含所述多个结点的AST子树,作为所述漏洞API的代码与所述已修复API的代码之间的差异抽象语法树AST特征。5.如权利要求3所述的方法,所述对所述目标API提取相应的AST特征,具体包括:根据所述删除子树结点集合和所述添加子树结点集合,在所述目标API的代码的AST中匹配对应的子树;对所述匹配成功的子树,在所述目标API的代码的AST提取上下文AST特征;将所述匹配成功的至少一个子树以及相应提取的上下文AST特征,作为对所述目标API提取的相应的AST特征。6.如权利要求1所述的方法,所述提取对应于所述差异AST特征的上下文AST特征,具体包括:确定所述已修复API的代码的AST相较于所述漏洞API的代码的AST,修复时所涉及的变量;2CN115391785A权利要求书2/4页在所述漏洞API的代码的AST和/或所述已修复API的代码的AST中,获取所述变量的定义结点,以及之后所述变量的使用结点,并据此确定所述差异AST特征的上下文AST特征。7.如权利要求6所述的方法,所述据此确定所述差异AST特征的上下文AST特征,具体包括:适应于所述漏洞API的代码的AST和/或所述已修复API的代码的AST的对应结构,通过构建虚边,将所述定义结点和所述使用结点重新融合在同一个子树中,以保持与所述对应结构的一致性。8.如权利