一种应用安全逻辑漏洞半自动化检测方法、系统及设备与流程

文档序号:33761013发布日期:2023-04-18 17:52阅读:76来源:国知局
一种应用安全逻辑漏洞半自动化检测方法、系统及设备与流程

本技术涉及应用安全检测领域,尤其是涉及一种应用安全逻辑漏洞半自动化检测方法、系统及设备。


背景技术:

1、漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。

2、在云端系统开发过程中,也常会出现一些漏洞、缺陷。这些漏洞放任不管会对系统的正常运行造成不良影响,因此漏洞检测成为了系统开发过程中极为重要的一环;之前针对于常规的web漏洞检测可依托于扫描工具以及人工分析的方式进行渗透测试。

3、但是针对于业务逻辑漏洞的检测,比如未授权访问漏洞,大部分都是依靠人工测试,每次测试未授权访问漏洞,均需要抓取到所有的请求包,然后人工依次针对这些请求包,将cookie或者token等信息清除后,然后重新发包,看是否可进行未授权访问,但是这样大量重复的操作,会消耗大量的人力,往往每次的系统检测周期较短,因此会出现部分接口漏掉,而导致一些未授权访问漏洞无法被人工发现。

4、针对上述中的相关技术,根据不同的业务场景去进行业务逻辑漏洞检测,比较依赖于人员的逻辑思维,因此人工测试分析,总是会出现部分接口测试不到位或者无法发现的情况,这样就会导致存在部分风险接口不易被发现和测试出来,导致应用系统存在安全风险。


技术实现思路

1、为了能够提高风险接口检测的准确性,减少应用系统存在的安全风险,本技术提供一种应用安全逻辑漏洞半自动化检测方法、系统及设备。

2、本技术提供的一种应用安全逻辑漏洞半自动化检测方法采用如下的技术方案:

3、一种应用安全逻辑漏洞半自动化检测方法,包括:

4、获取用户数据,其中用户数据包括身份信息、与身份信息对应的接口以及接口返回信息;

5、获取测试身份信息;

6、将测试身份信息输入到预置的漏洞反馈检测模型,得出反馈信息;

7、根据接口返回信息与反馈信息的比对,得出存在漏洞的接口。

8、通过采用上述技术方案,通过将测试身份信息输入到预置的漏洞反馈检测模型,得出反馈信息,再根据接口返回信息与反馈信息的比对,能够自动得出存在漏洞的接口,提高风险接口检测的准确性。

9、优选的,将测试身份信息输入到预置的漏洞反馈检测模型,包括以下步骤:

10、根据预置分类规则,判断测试身份信息的类别;其中测试身份信息的类别分别为水平测试身份信息、低权测试身份信息以及空白测试身份信息;

11、根据测试身份信息的类别,匹配漏洞反馈检测模型;

12、其中,漏洞反馈检测模型为第一反馈模型、第二反馈模型或第三反馈模型;

13、第一反馈模型用于根据水平测试身份信息替换身份信息再次请求接口,得到接口返回信息作为反馈信息;

14、第二反馈模型用于获取测试身份信息对应的接口返回信息,并将测试身份信息对应的接口返回信息与接口返回信息比对,得出差异接口,并以低权测试身份信息替换身份信息再次请求接口,得出反馈信息;

15、第三反馈模型用于根据空白测试身份信息替换身份信息再次请求接口,得出反馈信息。

16、通过采用上述技术方案,通过设置第一反馈模型能够对水平越权漏洞进行检测,第二反馈模型能够对垂直越级漏洞进行检测,第三反馈模型能够对身份空白的访问漏洞及未授权访问漏洞进行检测,能够较为全面的检测用户越权漏洞。

17、优选的,所述反馈模型通过自动化脚本的自动发送请求的方式再次请求差异接口或接口。

18、通过采用上述技术方案,利用自动化脚本请求差异接口或接口,使得人员无需反复输入请求信息,方便了人员的操作。

19、优选的,在根据接口返回信息与反馈信息的比对,得出存在漏洞的接口中,包括以下步骤:

20、将接口返回信息中与反馈信息比对,将相同内容信息对应的接口作为存在漏洞的接口,其中,接口返回信息中与反馈信息均包括多组内容信息以及与内容信息对应的接口。

21、通过采用上述技术方案,在身份信息更换登录后,接口返回的信息势必也会更换,若是反馈信息存在应当应当因为身份信息更换改变的内容信息,而该内容信息未改变,则说明出现越权漏洞。

22、优选的,用户数据还包括接口请求信息,包括以下步骤:

23、根据接口请求信息,获取购买数据;

24、根据预置的验证算法,修改购买数据,得到修改请求;

25、使用修改请求再次请求接口,得到返回信息;

26、根据返回信息,得到订单漏洞结果,其中订单漏洞结果包括订单正常结果以及订单异常结果。

27、通过采用上述技术方案,本技术还能够对订单漏洞进行检测,从而减少因为订单购买数据出现漏洞造成财产损失的风险。

28、优选的,所述验证算法包括第一算法以及第二算法:

29、第一算法:保持购买数据中的商品金额参数不变,根据赋值公式:a=c/b,采用四舍五入的方式对a进行取整,取预置数量个大于a的整数分别对修改购买数据中购买数量进行修改;

30、第二算法:保持购买数据中的购买数量参数不变,根据赋值公式:b=c/a,采用四舍五入的方式对b进行取整,取预置数量个大于b的整数分别对修改购买数据中的商品金额进行修改;

31、其中,c为int型最大值;b为商品金额;a为购买数量。

32、通过采用上述技术方案,本技术能够检测因若总金额大于int型最大值,就会溢出然后归零而导致订单金额计算的支付溢出漏洞。

33、优选的,所述验证算法还包括第三算法、第四算法、第五算法以及第六算法;

34、第三算法:保持购买数据中的商品金额参数不变,生成小数特征数组、负数特征数组以及绝对值小于1的特征数组,依据生成的小数特征数组、负数特征数组以及绝对值小于1的特征数组内的数分别对修改购买数据中购买数量进行修改;

35、第四算法:保持购买数据中的购买数量参数不变,生成复合特征数组,依据生成的复合特征数组内的数分别对修改购买数据中商品金额参数进行修改,其中,复合特征数组内数的种类包括有负数、绝对值小于1的数以及包含小数点的数;

36、第五算法:保持购买数据中的购买数量参数不变,生成负整数特征数组,依据生成的负整数特征数组内的数分别对修改购买数据中的商品金额参数进行修改;

37、第六算法:保持商品金额不变,生成负整数特征数组,依据生成的负整数特征数组内的数分别对修改购买数据中的购买数量参数进行修改。

38、通过采用上述技术方案,本技术还能够对商品金额以及购买数量的数值为负数、带小数以及带零而造成的支付绕过漏洞检测方法进行检测。

39、本技术还提供一种应用安全逻辑漏洞半自动化检测系统。

40、一种应用安全逻辑漏洞半自动化检测系统,包括:

41、数据获取模块,用于获取用户数据,其中用户数据包括身份信息、与身份信息对应的接口以及接口返回信息;

42、验证模块,用于获取测试身份信息;

43、反馈模块,用于将测试身份信息输入到预置的漏洞反馈检测模型,得出反馈信息;

44、漏洞识别模块,用于根据接口返回信息与反馈信息的比对,得出存在漏洞的接口。

45、本技术还提供一种计算机可读存储介质。

46、一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现一种应用安全逻辑漏洞半自动化检测方法。

47、本技术还提供一种计算机设备,采用如下技术方案:

48、一种计算机设备,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如上述一种应用安全逻辑漏洞半自动化检测方法的计算机程序。

49、综上所述,本技术包括以下至少一种有益技术效果:

50、1.本技术能够嵌入到正常的测试人员流程中,测试过程中以代理的方式,将流量发送至检测平台,结合漏洞扫描工具和测试经验积累的测试手段,尽可能通过黑盒手段发现已知或未知的攻击行为;

51、2.本技术还能够对支付逻辑漏洞,进行自动化检测,大大降低了因支付逻辑漏洞造成公司财产损失的风险。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1