利索能及
我要发布
收藏
专利号: 201611119489X
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:无效专利
更新日期:2024-12-09
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种保护函数调用的方法,其特征在于,所述方法包括:

检测所述函数的调用者信息;其中,所述检测的步骤包括:建立第一全局变量及第二全局变量;在调用所述函数之前,利用哈希算法计算所述第一全局变量的第一哈希值;在调用所述函数时,利用所述哈希算法计算所述第二全局变量的第二哈希值;

基于所述调用者信息判断所述调用者是否为正常用户,若不是正常用户,则断开此次调用,其中所述判断的步骤包括:判断所述第一哈希值与所述第二哈希值是否一致,若不一致,则确定所述调用者不是正常用户;

所述检测所述函数的调用者信息,判断所述调用者是否为正常用户,还包括:获取所述函数的调用链信息,所述函数的调用链信息是指当前的函数是从上层函数调用过来的;判断所述调用链信息与预设的调用链信息是否一致;若所述调用链信息与所述预设的调用链信息不一致,则确定所述调用者不是正常用户;其中,所述获取所述函数的调用链信息,包括:获取用于存储所述调用链信息内存地址的参数buffer;利用转化函数将所述内存地址转化为函数名称信息;基于所述函数名称信息获取所述函数调用链的函数名称信息;基于所述函数调用链的函数名称信息获取所述函数的调用链信息。

2.如权利要求1所述的方法,其特征在于,所述建立第一全局变量及第二全局变量之前,所述方法还包括:构造数据结构;

将所述数据结构设置为所述函数的调用参数类型。

3.如权利要求1所述的方法,其特征在于,所述第一全局变量的初始值与所述第二全局变量的初始值相同。

4.一种保护函数调用的装置,其特征在于,所述装置包括:

检测单元,用于检测所述函数的调用者信息;所述检测单元还用于:

建立第一全局变量及第二全局变量;在调用所述函数之前,利用哈希算法计算所述第一全局变量的第一哈希值;在调用所述函数时,利用所述哈希算法计算所述第二全局变量的第二哈希值;

判断单元,用于基于所述调用者信息判断所述调用者是否为正常用户,若不是正常用户,则断开此次调用;所述判断单元具体用于:判断所述第一哈希值与所述第二哈希值是否一致,若不一致,则确定所述调用者不是正常用户;

所述检测单元还用于:获取所述函数的调用链信息;判断所述调用链信息与预设的调用链信息是否一致;所述判断单元还用于:若所述调用链信息与所述预设的调用链信息不一致,则确定所述调用者不是正常用户;

其中,所述检测单元还用于:获取用于存储所述调用链信息内存地址的参数buffer;利用转化函数将所述内存地址转化为函数名称信息;基于所述函数名称信息获取所述函数调用链的函数名称信息;基于所述函数调用链的函数名称信息获取所述函数的调用链信息。

5.如权利要求4所述的装置,其特征在于,所述装置还包括:

构造单元,用于构造数据结构;

设置单元,用于将所述数据结构设置为所述函数的调用参数类型。