一种二阶SQL注入漏洞检测方法、装置及设备制造方法及图纸

技术编号:22568099 阅读:29 留言:0更新日期:2019-11-16 13:22
本说明书实施例提供一种二阶SQL注入漏洞检测方法、装置及设备。所述方法包括:获取与所述测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;在攻击载荷集合中选取测试攻击载荷填充至第一待测页面;获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。上述方法能够方便准确地对待测网站中可能存在的二阶SQL漏洞进行检测。

A second-order SQL injection vulnerability detection method, device and device

The embodiment of the specification provides a second-order SQL injection vulnerability detection method, device and device. The method includes: acquiring the web pages to be verified that match the test attack scenario, constructing the first page set to be tested and the second page set to be tested; selecting the test attack load from the attack load set to fill the first page to be tested; acquiring the pages that match the form elements of the second page set to be tested with the form elements of the first page to be tested, and constructing the third page to be tested Face set: fill in the third page to be tested according to the first page to be tested, and execute the first page to be tested and the third page to be tested; if there is error information matching the obtained execution result information in the error information set, feed back the first page to be tested, the third page to be tested and the execution result information as the second-order SQL injection vulnerability. The above method can easily and accurately detect the possible second-order SQL vulnerabilities in the test site.

【技术实现步骤摘要】
一种二阶SQL注入漏洞检测方法、装置及设备
本专利技术涉及网络安全检测
,特别涉及一种二阶SQL注入漏洞检测方法、装置及设备。
技术介绍
随着云计算、大数据、移动互联、区块链等技术的兴起,加快了相应
的发展,但同时,网络中的各项数据也更容易遭到不法分子的窃取,从而造成巨大的损失。其中,SQL注入作为一种常用的网络攻击一直备受黑客们的青睐。在开发客户端/服务器(B/S)的应用程序时,许多开发者忽略了对用户输入数据的合法性进行判断,攻击者就是利用这一点,在客户端的网页上通过表单输入并提交一段恶意的数据库查询代码(即,攻击载荷),服务端的应用程序根据用户提交的数据,未校验数据的合法性就直接构造SQL语句,提交到数据库服务器进行处理,从而完成窃取和篡改应用程序后台敏感数据、增加管理员账号、上传和下载非法文件、安装木马等一系列恶意操作,这就是SQL注入(SQLInjection)攻击技术。SQL注入包括两类:一阶SQL注入和二阶SQL注入。一阶SQL注入将攻击载荷直接动态构造到SQL查询中并被数据库立即解析执行,而二阶SQL注入则将攻击过程分为存储和触发两个阶段。存储阶段,攻击者把攻击载荷写入用户输入中发送给Web应用,然后数据库执行由Web应用构造的INSERT/UPDATE等语句后把攻击载荷当做数据存入数据库中。触发阶段,攻击者在客户端加载能调用攻击载荷的模块,使Web应用从数据库提取攻击载荷到内存中,然后Web应用提取内存中的数据动态构造SQL指令,数据库在执行Web应用新构造的SQL指令后攻击载荷被解析执行,完成SQL注入。现有的SQL注入检测方法和检测工具绝大多数仅针对一阶SQL注入,二阶SQL注入攻击虽广泛存在,并有持续增长的趋势,却还未引起足够关注。目前,二阶SQL注入攻击的检测还只能依赖于测试人员对页面功能的理解和可能出错位置(比如,用户注册-用户资料修改功能等)的经验判断,对可能发生二阶注入的功能点手动进行检查。但随着代码规模的增加,应用功能的复杂化,依赖经验执行的测试用例根本不能保证覆盖所有二阶SQL注入攻击场景。同时,人工检测的测试方式在测试效率、测试技能等方面的不足更加大了漏报的风险。因此,目前亟需一种能够快速准确地实现二阶SQL注入漏洞检测的方法。
技术实现思路
本说明书实施例的目的是提供一种二阶SQL注入漏洞检测方法、装置及设备,以实现快速准确地对二阶SQL注入漏洞进行检测。为了实现上述技术效果,本申请实施例提供了一种二阶SQL注入漏洞检测方法、装置及设备是这样实现的:一种二阶SQL注入漏洞检测方法,包括:获取待验证网页;在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;在攻击载荷集合中选取测试攻击载荷填充至第一待测页面;获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。一种二阶SQL注入漏洞检测装置,包括:网页获取模块,用于获取待验证网页;攻击场景获取模块,用于在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;页面集合构建模块,用于获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;攻击载荷填充模块,用于在攻击载荷集合中选取攻击载荷填充至第一待测页面;第三待测页面集合构建模块,用于获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;页面执行模块,用于根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;集合更新模块,用于在报错信息集合中存在与所获取的执行结果信息相匹配的报错信息时,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;反馈模块,用于将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。一种二阶SQL注入漏洞检测设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令实现以下步骤:获取待验证网页;在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;在攻击载荷集合中选取攻击载荷填充至第一待测页面;获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。为了更好地实现对全网SQL漏洞的检测,本申请实施例还提供另一种二阶SQL注入漏洞检测方法、装置及设备是这样实现的:一种二阶SQL漏洞检测方法,包括:获取待验证网页;在所接受到的运行模式信号为训练模式信号时,基于所述待验证网页构建第一待测页面集合和第二待测页面集合;在攻击载荷集合中选取攻击载荷填充至第一待测页面;获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,更新攻击场景集合、所述攻击载荷集合和所述报错信息集合;将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。一种二阶SQL注入漏洞检测装置,包括:网页获取模块,用于获取待验证网页;集合构建模块,用于在所接受到的运行模式信号为训练模式信号时,基于所述待验证网页构建第一待测页面集合和第二待测页面集合;攻击载荷填充模块,用于在攻击载荷集合中选取攻击载荷填充至第一待测页面;第三待测页面集合构建模块,用于获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;页面执行模块,用于根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;集合更新模块,用于在报错信息集合中存在与所获取的执行结果信息相匹配的报错信息时,更新攻击场景集合、所述攻击载荷集合和所述报错信息集合;反馈模块,用于将所述第本文档来自技高网
...

【技术保护点】
1.一种二阶SQL注入漏洞检测方法,其特征在于,包括:/n获取待验证网页;/n在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;/n获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;/n在攻击载荷集合中选取测试攻击载荷填充至第一待测页面;/n获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;/n根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;/n若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;/n将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。/n

【技术特征摘要】
1.一种二阶SQL注入漏洞检测方法,其特征在于,包括:
获取待验证网页;
在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;
获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;
在攻击载荷集合中选取测试攻击载荷填充至第一待测页面;
获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;
根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;
若报错信息集合中存在与所获取的执行结果信息相匹配的报错信息,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;
将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。


2.如权利要求1所述的方法,其特征在于,所述攻击场景集合中的攻击场景对应有攻击场景置信度;相应的,所述从攻击场景集合中获取测试攻击场景集合,包括:
基于攻击场景置信度阈值,在攻击场景集合中根据攻击场景置信度的大小选取攻击场景构建测试攻击场景集合。


3.如权利要求1所述的方法,其特征在于,所述攻击载荷集合中的攻击载荷对应有攻击载荷置信度;相应的,所述在攻击载荷集合中选取攻击载荷填充至第一待测页面,包括:
基于攻击载荷置信度阈值,在攻击载荷集合中根据攻击载荷置信度的大小选取攻击载荷构建测试攻击载荷集合;
选取测试攻击载荷集合中的测试攻击载荷填充至第一待测页面。


4.如权利要求1所述的方法,其特征在于,所述报错信息集合中的报错信息对应有报错信息响应次数;所述报错信息响应次数,表示填充所述攻击载荷后触发所述报错信息的次数;相应的,所述根据所述第一待测页面和所述第三待测页面更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合,包括:
增加填充所述攻击载荷后触发所述报错信息对应的报错信息响应次数。


5.如权利要求1所述的方法,其特征在于,所述获取待验证网页包括:
利用爬虫程序检测目标网站中的网页,获取其中包含表单且能够正常访问的网页,作为待验证网页。


6.如权利要求5所述的方法,其特征在于,所述利用爬虫程序检测目标网站中的网页,获取其中包含表单且能够正常访问的网页,作为待验证网页之后,还包括:
根据所述待验证网页中与待验证URL链表相对应的页面元素,构建网页信息映射集;所述网页信息映射集,包括:入链锚文本、出链锚文本、表单参数信息、表单填充信息、网页标题和服务器正常响应状态码。


7.如权利要求1所述的方法,其特征在于,所述测试攻击场景,包括存储点功能名称和触发点功能名称;所述获取与所述测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合,包括:
获取待验证网页中功能名称与所述存储点功能名称相匹配的网页,加入所述第一待测页面集合;
获取待验证网页中功能名称与所述触发点功能名称相匹配的网页,加入所述第二待测页面集合;所述功能名称,包括网页入链锚文本。


8.如权利要求1所述的方法,其特征在于,所述在攻击载荷集合中选取攻击载荷填充至第一待测页面之前,还包括:
在所述第一待测页面集合中选取第一待测页面;
获取所述第二待测页面集合中功能名称与所述第一待测页面的功能名称相匹配的页面,构建第二待测页面子集;
相应的,所述获取第二待测页面集合中表单元素与所述第一待测页面匹配的页面,构建第三待测页面集合,包括:
获取第二待测页面子集中表单元素与所述第一待测页面匹配的页面,构建第三待测页面集合。


9.如权利要求1所述的方法,其特征在于,所述在攻击载荷集合中选取攻击载荷填充至第一待测页面,包括:
在第一待测页面集合中选取第一待测页面;
根据第一待测页面中的表单输入项,构建第一待测页面输入项集合;
在第一待测页面输入项集合中选取第一待测页面填充项;
在攻击载荷集合中选取攻击载荷填充至所述第一待测页面填充项。


10.如权利要求9所述的方法,其特征在于,所述在攻击载荷集合中选取攻击载荷填充至所述第一待测页面填充项之后,还包括:
获取除第一待测页面填充项外的第一待测页面输入项,作为第一待测页面补充项;
在主题-实例对集合中获取与所述第一待测页面补充项匹配的主题-实例对,将所述主题-实例对中的实例填充至所述第一待测页面补充项。


11.如权利要求10所述的方法,其特征在于,所述主题-实例对对应有主题-实例对置信度;所述在主题-实例对集合中获取与所述第一待测页面补充项匹配的主题-实例对,将所述主题-实例对中的实例填充至所述第一待测页面补充项,包括:
在主题-实例对集合中获取与所述第一待测页面补充项匹配的至少一个主题-实例对;
根据所述至少一个主题-实例对的主题-实例对置信度的大小,选取主题-实例对并将所述主题-实例对中的实例填充至所述第一待测页面补充项。


12.如权利要求9所述的方法,其特征在于,所述在第一待测页面输入项集合中选取第一待测页面填充项之后,还包括:
若攻击载荷集合对应于所述第一待测页面填充项不存在对应的攻击载荷,在第一待测页面输入项集合中选取未检测的第一待测页面输入项作为第一待测页面填充项。


13.如权利要求9所述的方法,其特征在于,所述将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈之后,还包括:
判断所述第一待测页面输入项集合中是否存在未检测的第一待测页面输入项集合;
若存在,重复执行选取第一待测页面填充项步骤、填充第一待测页面填充项步骤、构建第三待测页面集合步骤、执行待测页面步骤、更新集合步骤以及反馈步骤直至第一待测页面输入项集合中不存在未检测的第一待测页面输入项为止。


14.如权利要求1所述的方法,其特征在于,所述表单元素,包括:表单标签关键词、表单域参数名、表单域描述性关键词。


15.如权利要求1所述的方法,其特征在于,所述根据第一待测页面对第三待测页面进行填充,包括:
获取所述第三待测页面与所述第一待测页面中表单标识性元素相同的输入项,作为等同输入项;
将所述第一待测页面中的等同输入项的输入值填入所述第三待测页面中的等同输入项中;
获取第三待测页面中除等同输入项以外的输入项,作为非等同输入项;
获取与所述非等同输入项相匹配的主题-实例对,根据其中的实例对所述非等同输入项进行填充。


16.如权利要求6所述的方法,其特征在于,所述执行所述第一待测页面和所述第三待测页面,包括:
将所述第一待测页面发送至页面执行服务器;
在服务器返回的对应于所述第一待测页面的状态码与服务器正常响应状态码相匹配且在正常响应信息集合中存在与所述执行结果信息相匹配的正常响应信息时,将所述第三待测页面发送至页面执行服务器;
获取执行结果信息。


17.如权利要求16所述的方法,其特征在于,所述将所述第一待测页面发送至页面执行服务器之后,还包括:
若服务器返回的对应于所述第一待测页面的状态码与服务器正常响应状态码不匹配或在正常响应信息集合中不存在与所述执行结果信息相匹配的正常响应信息,重新选取攻击载荷进行检测。


18.如权利要求1所述的方法,其特征在于,所述根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面之后,还包括:
若报错信息集合中不存在与所获取的执行结果信息相匹配的报错信息,判断正常响应信息集合中是否存在与所述执行结果信息相匹配的正常响应信息;
若存在,判断所述第三待测页面不是二阶SQL注入触发点。


19.如权利要求18所述的方法,其特征在于,所述判断正常响应信息集合中是否存在与所述执行结果信息相匹配的正常响应信息之后,还包括:
若正常响应信息集合中不存在与所述执行结果信息相匹配的正常响应信息,获取所述执行结果信息与正常响应信息的区别部分,作为异常信息;
计算对应于所述异常信息的异常信息置信度;
更新所述报错信息集合;
若所述异常信息置信度大于所述异常信息判断阈值,更新所述攻击场景集合和所述攻击载荷集合;
将所述第一待测页面、所述第三待测页面和所述异常信息作为二阶SQL注入漏洞进行反馈。


20.如权利要求19所述的方法,其特征在于,所述异常信息对应有异常信息响应次数;所述获取所述执行结果信息与正常响应信息的区别部分,作为异常信息之后,还包括:
增加填充所述攻击载荷后触发的所述异常信息对应的异常信息响应次数。


21.如权利要求19所述的方法,其特征在于,所述更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合,包括:
将所述异常信息置信度和所述攻击载荷对应的异常信息响应次数更新至报错信息集合;
计算所述攻击场景和所述攻击载荷对应的攻击场景置信度和攻击载荷置信度,并更新至所述攻击场景集合和所述攻击载荷集合。


22.如权利要求19所述的方法,其特征在于,所述异常信息对应有异常信息数据等级;所述计算所述异常信息的执行结果置信度,包括:
当所述异常信息数据等级为低级时,根据公式confidence(i)=RP(i)×IPF(i)计算异常信息置信度,式中,confidence(i)为异常信息i的置信度,为异常信息i的响应概率,为异常信息i的置信度的逆向攻击载荷频率;|{j|i∈a(j)}|为能够触发所述异常信息i的攻击载荷的数量,ne(j)为注入所述攻击载荷j时出现报错信息的次数,na(j)为注入所述攻击载荷j时出现异常信息的次数,na(i,j)为注入所述攻击载荷j时出现所述异常信息i的次数,|P|为攻击载荷集合中的攻击载荷的数量;
当所述异常信息数据等级为负高级时,将所述异常信息置信度设置为无效值。


23.如权利要求1所述的方法,其特征在于,所述更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合,包括:
设置所述第一待测页面的功能名称和所述第二待测页面的功能名称对应的攻击场景的攻击场景置信度;
设置所述攻击载荷的攻击载荷置信度;
设置所述报错信息的报错信息置信度。


24.如权利要求23所述的方法,其特征在于,所述攻击场景对应有攻击场景数据等级;所述攻击场景置信度,根据以下方式获取:
当所述攻击场景数据等级为中级时,若攻击场景集合中存在所述攻击场景,利用公式confidencenew(d)=max(confidenceold(d),n)计算攻击场景置信度,式中,confidencenew(d)为计算得到的攻击场景置信度,max(confidenceold(d),n)为攻击场景集合中所述攻击场景对应的原攻击场景置信度与信任值之间的较大值;若攻击场景集合中不存在所述攻击场景,将所述攻击场景置信度设置为信任值;
当所述攻击场景数据等级为低级时,若攻击场景集合中存在所述攻击场景,利用公式confidencenew(d)=confidenceold(d)+1计算攻击场景置信度,式中,confidencenew(d)为计算得到的攻击场景置信度,confidenceold(d)为攻击场景原本对应的攻击场景置信度;若攻击场景集合中不存在所述攻击场景,将所述攻击场景置信度设置为起始值;
当所述攻击场景数据等级为负高级时,将所述攻击场景置信度设置为无效值。


25.如权利要求23所述的方法,其特征在于,所述攻击载荷对应有攻击载荷数据等级;所述攻击载荷置信度,根据以下方式获取:
当所述攻击载荷数据等级为高级时,若攻击载荷集合中存在所述攻击载荷,利用公式confidencenew(dn)=max(confidenceold(dn))+1计算攻击载荷置信度,式中,confidencenew(dn)为计算得到的攻击载荷置信度,max(confidenceold(dn))为攻击载荷集合中所述攻击载荷的最大值;若攻击载荷集合中不存在所述攻击载荷,将所述攻击载荷置信度设置为信任值;
当所述攻击载荷数据等级为中级时,若攻击载荷集合中存在所述攻击载荷,利用公式confidencenew(d)=max(confidenceold(d),n)计算攻击载荷置信度,式中,confidencenew(d)为计算得到的攻击载荷置信度,max(confidenceold(d),n)为攻击载荷集合中所述攻击载荷对应的原攻击载荷置信度与信任值之间的较大值;若攻击载荷集合中不存在所述攻击载荷,将所述攻击载荷置信度设置为信任值;
当所述攻击载荷数据等级为低级时,若攻击载荷集合中存在所述攻击载荷,利用公式confidencenew(d)=confidenceold(d)+1计算攻击载荷置信度,式中,confidencenew(d)为计算得到的攻击载荷置信度,confidenceold(d)为攻击载荷原本对应的攻击载荷置信度;若攻击载荷集合中不存在所述攻击载荷,将所述攻击载荷置信度设置为起始值;
当所述攻击载荷数据等级为负高级时,利用公式confidencenew(d)=confidenceold(d)-1计算攻击载荷置信度,式中,confidencenew(d)为计算得到的攻击载荷置信度,confidenceold(d)为攻击载荷原本对应的攻击载荷置信度。


26.如权利要求11所述的方法,其特征在于,所述主题-实例对对应有主题-实例对数据等级;所述主题-实例对置信度,根据以下方式获取:
当所述主题-实例对数据等级为高级时,若主题-实例对集合中存在所述主题t,利用公式计算主题-实例对置信度,式中,(t,i)为主题-实例对,confidence(t,i)为计算得到的主题-实例对置信度,为主题-实例对集合中所述主题t对应的主题-实例对置信度的最大值;若主题-实例对集合中不存在所述主题-实例对,将所述主题-实例对置信度设置为信任值;
当所述主题-实例对数据等级为中级时,若主题-实例对集合中存在所述主题-实例对,利用公式confidencenew(d)=max(confidenceold(d),n)计算主题-实例对置信度,式中,confidencenew(d)为计算得到的主题-实例对置信度,max(confidenceold(d),n)为主题-实例对集合中所述主题-实例对对应的原主题-实例对置信度与信任值之间的较大值;若主题-实例对集合中不存在所述主题-实例对,将所述主题-实例对置信度设置为信任值;
当所述主题-实例对数据等级为低级时,若主题-实例对集合中存在所述主题-实例对,利用公式confidencenew(d)=confidenceold(d)+1计算主题-实例对置信度,式中,confidencenew(d)为计算得到的主题-实例对置信度,confidenceold(d)为主题-实例对原本对应的主题-实例对置信度;若主题-实例对集合中不存在所述主题-实例对,将所述主题-实例对置信度设置为起始值。


27.如权利要求23所述的方法,所述报错信息对应有报错信息数据等级;所述报错信息置信度,根据以下方式获取:
当所述报错信息数据等级为中级时,将所述报错信息置信度设置为信任值。


28.如权利要求3所述的方法,其特征在于,所述将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈之后,还包括:
判断所述第三待测页面集合中是否存在未被检测的第三待测页面;
若存在,重复执行待测页面步骤、更新集合步骤以及反馈步骤直至第三待测页面集合中不存在未被检测的第三待测页面。


29.如权利要求3所述的方法,其特征在于,所述将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈之后,还包括:
判断所述测试攻击载荷集合中是否存在未被选取的测试攻击载荷;
若存在,重复执行填充攻击载荷步骤、构建第三待测页面集合步骤、执行待测页面步骤、更新集合步骤以及反馈步骤直至所述测试攻击载荷集合中不存在未被选取的测试攻击载荷。


30.如权利要求1所述的方法,其特征在于,所述将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈之后,还包括:
判断第一待测页面集合中是否存在未检测的页面;
若存在,重复执行获取其中未检测的页面作为第一待测页面、填充攻击载荷步骤、构建第三待测页面集合步骤、执行待测页面步骤、更新集合步骤以及反馈步骤直至第一待测页面集合中不存在未检测的页面。


31.一种二阶SQL注入漏洞检测装置,其特征在于,包括:
网页获取模块,用于获取待验证网页;
攻击场景获取模块,用于在所接受到的运行模式信号为测试模式信号时,从攻击场景集合中获取测试攻击场景集合;
页面集合构建模块,用于获取与测试攻击场景相匹配的待验证网页,构建第一待测页面集合和第二待测页面集合;
攻击载荷填充模块,用于在攻击载荷集合中选取攻击载荷填充至第一待测页面;
第三待测页面集合构建模块,用于获取第二待测页面集合中表单元素与所述第一待测页面的表单元素匹配的页面,构建第三待测页面集合;
页面执行模块,用于根据第一待测页面对第三待测页面进行填充,并执行所述第一待测页面和所述第三待测页面;
集合更新模块,用于在报错信息集合中存在与所获取的执行结果信息相匹配的报错信息时,更新所述攻击场景集合、所述攻击载荷集合和所述报错信息集合;
反馈模块,用于将所述第一待测页面、所述第三待测页面和所述执行结果信息作为二阶SQL注入漏洞进行反馈。


32.如权利要求31所述的装置,其特征在于,所述攻击场景对应有攻击场景置信度;所述攻击载荷对应有攻击载荷置信度;所述报错信息对应有报错信息置信度;所述装置还包括:
用户接口模块,用于接收主题-实例对、攻击场景、攻击载荷、报错信息并扩充主体实例对集合、攻击场景集合、攻击载荷集合和报错信息集合;还用于接收置信度设定指令,并根据所述置信度设定指令来设定主题-实例对置信度和/或攻击场景置信度和/或攻击载荷置信度和/或报错信息置信度和/或异常信息置信度;还用于接收待测网站信息;还用于反馈检测结果。


33.一种二阶SQL注入漏洞检测设备,其特征在于,包括:

【专利技术属性】
技术研发人员:刘雨康孔壮
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1