[发明专利]一种文件权限缺陷的检测方法和装置在审
申请号: | 202310550115.7 | 申请日: | 2023-05-12 |
公开(公告)号: | CN116561801A | 公开(公告)日: | 2023-08-08 |
发明(设计)人: | 陆杰;施程航;狄鹏;李炼 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许振新 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 权限 缺陷 检测 方法 装置 | ||
1.一种文件权限缺陷的检测方法,包括:
确定系统中用于创建文件的底层API函数;
根据所述底层API函数确定所述系统中用于创建文件的起始API函数;
根据所述起始API函数以及所述底层API函数,确定文件创建过程中涉及的文件参数;
根据所述文件参数确定文件权限的设置是否存在缺陷。
2.如权利要求1所述的检测方法,所述底层API函数基于所述系统中的目标文档确定,所述目标文档用于解释说明所述系统提供的API函数的作用或功能,所述系统提供的API函数中包括用于创建文件的多个API函数。
3.如权利要求1所述的检测方法,所述根据所述底层API函数确定所述系统中用于创建文件的起始API函数,包括:
确定所述系统中用于创建文件的多个API函数之间的函数调用图,所述函数调用图中包括所述多个API函数之间的调用关系;
根据所述函数调用图,以所述底层API函数为起点进行后向分析,确定所述起始API函数。
4.如权利要求3所述的检测方法,所述确定所述系统中用于创建文件的多个API函数之间的函数调用图,包括:
枚举所述多个API函数内部存在的调用边;
根据枚举的调用边,确定所述多个API函数之间的函数调用图。
5.如权利要求4所述的检测方法,在确定所述多个API函数之间的函数调用图后,所述检测方法还包括:
遍历所述函数调用图中的节点,获取节点的调用函数集合,所述调用函数集合中包含节点调用的被调函数;
获取所述被调函数的继承函数;
将所述继承函数添加到所述调用函数集合以及将所述节点对应的函数添加到所述继承函数的被调函数集合,所述被调函数集合中包括调用所述继承函数的函数;
根据所述调用函数集合以及所述被调函数集合,对所述函数调用图进行补边。
6.如权利要求3所述的检测方法,所述根据所述函数调用图,以所述底层API函数为起点进行后向分析,确定所述起始API函数,包括:
根据所述函数调用图确定调用所述底层API函数的至少一个第一函数;
针对任一个第一函数,确定所述底层API函数的参数与所述第一函数的参数之间是否具备传播性;
在具备传播性的情况下,通过递归调用的方法对所述第一函数进行后向分析,直至第二函数的参数与第三函数的参数之间不具备传播性时结束递归调用,并将所述第二函数确定为所述起始API函数。
7.如权利要求6所述的检测方法,所述底层API函数的参数与所述第一函数的参数之间具备传播性,包括:
所述第一函数的参数与所述底层API函数的参数一致;
所述底层API函数的参数与所述第一函数的参数之间不具备传播性,包括:
所述第一函数的参数与所述底层API函数的参数不一致。
8.如权利要求1所述的检测方法,所述根据所述起始API函数以及所述底层API函数,确定文件创建过程中涉及的文件参数,包括:
确定以所述起始API函数为起点、以所述底层API函数为终点的函数调用链;
确定所述函数调用链中每层函数使用的第一参数以及所述第一参数的别名变量;
将所述函数调用链中每层函数使用的所述第一参数以及所述第一参数的别名变量确定为文件创建过程中涉及的文件参数。
9.如权利要求8所述的检测方法,确定所述函数调用链中每层函数使用的第一参数的别名变量,包括:
根据所述函数调用链,以所述起始API函数为起点进行前向分析;
针对所述函数调用链中的任一层函数,遍历调用所述函数的第一指令,确定所述第一指令中的成员变量与所述函数使用的所述第一参数是否是相同的成员变量;
若是,则将所述第一指令中的成员变量确定为所述函数使用的所述第一参数的别名变量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310550115.7/1.html,转载请声明来源钻瓜专利网。