利索能及
我要发布
收藏
专利号: 2018111888293
申请人: 平安科技(深圳)有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种结构化查询语言SQL注入漏洞检测方法,其特征在于,所述SQL注入漏洞检测方法包括以下步骤:当获取到待测试网站的统一资源定位符URL请求后,确定所述URL请求的检测点,并构造所述检测点对应布尔逻辑参数的序列请求;

获取执行所述URL请求和所述序列请求后得到的响应页面,对所述响应页面进行相似度分析,得到所述URL请求对应响应页面与所述序列请求中每一请求对应响应页面之间的相似度值;

若所述相似度值满足预设条件,则确定所述URL请求存在SQL注入漏洞;

所述构造所述检测点对应布尔逻辑参数的序列请求的步骤包括:

为所述URL请求中的每一检测点构造一个逻辑真条件的请求,记为第一真请求;

为所述URL请求中的每一检测点构造一个逻辑假条件的请求,记为第一假请求,并为所述第一真请求构造逻辑真条件的确认请求,记为第二真请求;

为所述第一假请求构造逻辑假条件的确认请求,记为第二假请求,以形成包括所述第一真请求、第一假请求、第二真请求和第二假请求的序列请求;

所述若所述相似度值满足预设条件,则确定所述URL请求存在SQL注入漏洞的步骤包括:若确定所述URL请求对应的第一响应页面与所述第一真请求对应的第二响应页面之间的第一杰卡德系数大于第一阈值,则判断所述第一响应页面与所述第一假请求对应的第三响应页面之间的第二杰卡德系数是否小于第二阈值;

若所述第二杰卡德系数小于所述第二阈值,则确定所述第一响应页面与所述第二真请求对应的第四响应页面之间的第三杰卡德系数,并计算所述第三杰卡德系数与所述第一杰卡德系数之间的第一差值;

若所述第一差值小于第三阈值,则确定所述第一响应页面与所述第二假请求对应的第五响应页面之间的第四杰卡德系数,并计算所述第四杰卡德系数与所述第二杰卡德系数之间的第二差值;

若所述第二差值小于第四阈值,则确定所述URL请求存在SQL注入漏洞。

2.如权利要求1所述的SQL注入漏洞检测方法,其特征在于,所述获取执行所述URL请求和所述序列请求后得到的响应页面,对所述响应页面进行相似度分析,得到所述URL请求对应响应页面与所述序列请求中每一请求对应响应页面之间的相似度值的步骤包括:获取执行所述URL请求和所述序列请求后对应得到的响应页面,并计算所述URL请求对应的第一响应页面与所述序列请求对应的每一序列响应页面之间的杰卡德系数;

将所述杰卡德系数对应作为所述第一响应页面与各个所述序列响应页面之间的相似度值。

3.如权利要求2所述的SQL注入漏洞检测方法,其特征在于,所述获取执行所述URL请求和所述序列请求后对应得到的响应页面,并计算所述URL请求对应的第一响应页面与所述序列请求对应的每一序列响应页面之间的杰卡德系数的步骤包括:获取执行所述URL请求和所述序列请求后对应得到的响应页面,根据预设的换行符将所述第一响应页面和所述序列响应页面对应的文本分割成字符段;

根据预设的分隔符将所述字符段分割成字符串,对应得到所述第一响应页面和所述序列响应页面对应的元素;

计算所述第一响应页面与每一所述序列响应页面之间元素的交集和并集,将所述交集除以对应的所述并集,得到对应的杰卡德系数。

4.一种SQL注入漏洞检测装置,其特征在于,所述SQL注入漏洞检测装置包括:确定模块,用于当获取到待测试网站的统一资源定位符URL请求后,确定所述URL请求的检测点;

构造模块,用于构造所述检测点对应布尔逻辑参数的序列请求;

获取模块,用于获取执行所述URL请求和所述序列请求后得到的响应页面;

分析模块,用于对所述响应页面进行相似度分析,得到所述URL请求对应响应页面与所述序列请求中每一请求对应响应页面之间的相似度值;

所述确定模块还用于若所述相似度值满足预设条件,则确定所述URL请求存在SQL注入漏洞;

所述构造模块,还用于为所述URL请求中的每一检测点构造一个逻辑真条件的请求,记为第一真请求;

为所述URL请求中的每一检测点构造一个逻辑假条件的请求,记为第一假请求,并为所述第一真请求构造逻辑真条件的确认请求,记为第二真请求;

为所述第一假请求构造逻辑假条件的确认请求,记为第二假请求,以形成包括所述第一真请求、第一假请求、第二真请求和第二假请求的序列请求;

所述确定模块还用于,若确定所述URL请求对应的第一响应页面与所述第一真请求对应的第二响应页面之间的第一杰卡德系数大于第一阈值,则判断所述第一响应页面与所述第一假请求对应的第三响应页面之间的第二杰卡德系数是否小于第二阈值;

若所述第二杰卡德系数小于所述第二阈值,则确定所述第一响应页面与所述第二真请求对应的第四响应页面之间的第三杰卡德系数,并计算所述第三杰卡德系数与所述第一杰卡德系数之间的第一差值;

若所述第一差值小于第三阈值,则确定所述第一响应页面与所述第二假请求对应的第五响应页面之间的第四杰卡德系数,并计算所述第四杰卡德系数与所述第二杰卡德系数之间的第二差值;

若所述第二差值小于第四阈值,则确定所述URL请求存在SQL注入漏洞。

5.一种SQL注入漏洞检测设备,其特征在于,所述SQL注入漏洞检测设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的SQL注入漏洞检测程序,所述SQL注入漏洞检测程序被所述处理器执行时实现如权利要求1至3中任一项所述的SQL注入漏洞检测方法的步骤。

6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有SQL注入漏洞检测程序,所述SQL注入漏洞检测程序被处理器执行时实现如权利要求1至3中任一项所述的SQL注入漏洞检测方法的步骤。