一种SQL注入漏洞批量检测的方法及装置制造方法及图纸

技术编号:28209164 阅读:60 留言:0更新日期:2021-04-24 14:42
本发明专利技术公开了一种SQL注入漏洞批量检测的方法及装置,其方法包括:根据用户配置的过滤规则,获取所有客户端与服务器通信的所有目标请求数据;通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件;通过对所述每个SQL注入漏洞检测结果文件进行解析,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞;当判断所述SQL注入漏洞检测结果文件中存在SQL注入漏洞时,根据所述SQL注入漏洞检测结果文件进行精准SQL注入漏洞的定位。漏洞的定位。漏洞的定位。

【技术实现步骤摘要】
一种SQL注入漏洞批量检测的方法及装置


[0001]本专利技术涉及软件安全检测
,特别涉及一种SQL注入漏洞批量检测的方法及装置。

技术介绍

[0002]近年来,基于数据库的web应用越来越广泛,各种业务应用的数据库安全问题、敏感数据的防窃取和防篡改问题日益严峻,SQL注入漏洞作为主要安全威胁是最具破坏性的漏洞之一,可能存在于任何基于数据库的应用程序中。SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL注入是指攻击者利用应用程序中的用户输入数据没有严格校验的缺陷,通过把SQL命令插入到Web表单,或者把SQL命令输入域名,或者把SQL命令插入到页面请求的字符串中,最终达到欺骗服务器来执行恶意的SQL命令。攻击者通过SQL注入,对应用程序造成攻击,从而获得敏感信息,并且在一些情况下,还有可能导致服务器权限丢失。因此,对于基于数据库的业务应用,防御SQL注入相当重要。
[0003]目前SQL注入漏洞检测技术分为两种方式:自动化扫描和手工渗透。自动化扫描工具主要由网络爬虫和渗透测试两部分组成。首先利用网络爬虫搜索目标系统链接到服务器的URL列表,然后对其进行渗透测试。该方式能够快速检测SQL注入漏洞,但爬虫所得测试数据的覆盖率影响检测能力。由于目前爬虫技术的限制和不稳定性,大部分扫描工具的误报和漏报概率都比较大,检测准确率较低。手工分析需要测试者对当前系统有比较深入的了解,从中过滤出目标测试点,采取手工的方式逐条测试。虽然此种可以保证漏洞检测的准确度,但对测试人员技术要求较高,且检测过程需要消耗大量时间导致效率比较低下。
[0004]通过分析SQL注入漏洞检测技术,可以得知SQL注入具有非常复杂和多变的攻击方式,现有的检测技术不能满足应用程序的需求。

技术实现思路

[0005]基于此本专利技术提出一种SQL注入漏洞批量检测方法及装置,充分结合漏洞检测工具的优点,通过代理工具快速全面收集测试数据,进一步集成SQLMAP一款用来检测与利用SQL注入漏洞的开源工具,利用批处理方式对待测数据执行漏洞检测,确保检测的高效性和准确性。
[0006]根据本专利技术实施例提供的一种SQL注入漏洞批量检测的方法,包括:
[0007]根据用户配置的过滤规则,获取所有客户端与服务器通信的所有目标请求数据;
[0008]通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件;
[0009]通过对所述每个SQL注入漏洞检测结果文件进行解析,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞;
[0010]当判断所述SQL注入漏洞检测结果文件中存在SQL注入漏洞时,根据所述SQL注入
漏洞检测结果文件进行精准SQL注入漏洞的定位。
[0011]优选地,在所述获取所有客户端与服务器通信的所有目标请求数据之后,还包括:
[0012]通过分别对所述每个目标请求数据进行分析处理,提取所述每个目标请求数据中的会话信息;
[0013]判断所述每个目标请求数据中的会话信息是否为有效会话信息;
[0014]当判断所述目标请求数据中的会话信息为无效会话信息时,则将所述目标请求数据中的无效会话信息替换为有效会话信息。
[0015]优选地,所述过滤规则包括域名过滤、请求类型过滤及返回代码过滤;其中,所述域名过滤包括一级域名过滤和二级域名过滤;所述类型过滤是指根据请求头信息进行过滤,其包括仅显示URL中包含指定字符串的请求、仅隐藏URL中包含指定字符串的请求以及标记带有特定header的请求;所述返回代码过滤是指根据服务器响应类型进行过滤,其包括图片类型、HTML类型、TEXT/CSS类型、SCRIPTS类型、JSON、XML等方式。
[0016]优选地,所述获取所有客户端与服务器通信的所有目标请求数据包括:
[0017]利用SmartFiddler代理工具对所有客户端与服务器的通信进行监听,记录并保存所有客户端与服务器通信的所有目标请求数据。
[0018]优选地,所述通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件包括:
[0019]利用配置有检测规则和配置文件的集成SQLMAP漏洞检测工具对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件。
[0020]优选地,所述检测规则包括默认检测规则和自定义检测规则;其中,所述默认检测规则包括基于布尔的盲注、基于时间的盲注、基于报错注入、联合查询注入及堆查询注入。
[0021]优选地,所述通过对所述每个SQL注入漏洞检测结果文件进行解析,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞包括:
[0022]通过对所述每个SQL注入漏洞检测结果文件进行解析,提取所述SQL注入漏洞检测结果文件中的SQL注入点标签信息;
[0023]根据所述SQL注入点标签信息,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞。
[0024]根据本专利技术实施例提供的一种SQL注入漏洞批量检测的装置,包括:
[0025]获取模块,用于根据用户配置的过滤规则,获取所有客户端与服务器通信的所有目标请求数据;
[0026]检测模块,用于通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件;
[0027]判断模块,用于通过对所述每个SQL注入漏洞检测结果文件进行解析,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞;
[0028]定位模块,用于当判断所述SQL注入漏洞检测结果文件中存在SQL注入漏洞时,根据所述SQL注入漏洞检测结果文件进行精准SQL注入漏洞的定位。
[0029]优选地,所述判断模块还用于通过分别对所述每个目标请求数据进行分析处理,提取所述每个目标请求数据中的会话信息,判断所述每个目标请求数据中的会话信息是否
为有效会话信息,以及当判断所述目标请求数据中的会话信息为无效会话信息时,则将所述目标请求数据中的无效会话信息替换为有效会话信息。
[0030]优选地,所述过滤规则包括域名过滤、请求类型过滤及返回代码过滤;其中,所述域名过滤包括一级域名过滤和二级域名过滤;所述类型过滤是指根据请求头信息进行过滤,其包括仅显示URL中包含指定字符串的请求、仅隐藏URL中包含指定字符串的请求以及标记带有特定header的请求;所述返回代码过滤是指根据服务器响应类型进行过滤,其包括图片类型、HTML类型、TEXT/CSS类型、SCRIPTS类型、JSON、XML等方式。
[0031]根据本专利技术实施例提供的方案,可确保SQL注入漏洞检测的高效性和准确性,并能最大限度的降低漏测和误报情况,保证web应用系统安全,提升研发效本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种SQL注入漏洞批量检测的方法,其特征在于,包括:根据用户配置的过滤规则,获取所有客户端与服务器通信的所有目标请求数据;通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件;通过对所述每个SQL注入漏洞检测结果文件进行解析,判断所述SQL注入漏洞检测结果文件中是否存在SQL注入漏洞;当判断所述SQL注入漏洞检测结果文件中存在SQL注入漏洞时,根据所述SQL注入漏洞检测结果文件进行精准SQL注入漏洞的定位。2.根据权利要求1所述的方法,其特征在于,在所述获取所有客户端与服务器通信的所有目标请求数据之后,还包括:通过分别对所述每个目标请求数据进行分析处理,提取所述每个目标请求数据中的会话信息;判断所述每个目标请求数据中的会话信息是否为有效会话信息;当判断所述目标请求数据中的会话信息为无效会话信息时,则将所述目标请求数据中的无效会话信息替换为有效会话信息。3.根据权利要求1所述的方法,其特征在于,所述过滤规则包括域名过滤、请求类型过滤及返回代码过滤;其中,所述域名过滤包括一级域名过滤和二级域名过滤;所述类型过滤是指根据请求头信息进行过滤,其包括仅显示URL中包含指定字符串的请求、仅隐藏URL中包含指定字符串的请求以及标记带有特定header的请求;所述返回代码过滤是指根据服务器响应类型进行过滤,其包括图片类型、HTML类型、TEXT/CSS类型、SCRIPTS类型、JSON、XML等方式。4.根据权利要求1所述的方法,其特征在于,所述获取所有客户端与服务器通信的所有目标请求数据包括:利用SmartFiddler代理工具对所有客户端与服务器的通信进行监听,记录并保存所有客户端与服务器通信的所有目标请求数据。5.根据权利要求1所述的方法,其特征在于,所述通过对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件包括:利用配置有检测规则和配置文件的集成SQLMAP漏洞检测工具对所述所有目标请求数据进行SQL注入漏洞批量检测处理,得到所述每个有效目标请求数据对应的SQL注入漏洞检测结果文件。6.根据权利...

【专利技术属性】
技术研发人员:谢吉伦薛念明魏光玉张明岩林秀徐冉王军建刘涛张强边莉马玉洁
申请(专利权)人:山东鲁能软件技术有限公司
类型:发明
国别省市:

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

1