最新SQLMAP --tamper 绕过WAF脚本分类整理

本文介绍了SQL注入工具SQLMAP的tamper模块,提供了57个绕过Web应用防火墙(WAF)的脚本,包括对单引号、编码、关键词替换等的处理方式。这些脚本适用于不同数据库,如MySQL、Oracle、PostgreSQL等,并给出了不同数据库适用的脚本示例。
摘要由CSDN通过智能技术生成

SQLMAP(1.3.1.29)是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,最新版sqlmap支持的数据库有MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB, Informix, HSQLDB and H2。采用五种独特的SQL注入技术,分别是基于布尔类型的盲注,基于报错注入,UNION查询SQL注入,堆查询和基于时间的SQL盲注入。其功能和选项包括数据库指纹识别,数据库提取,访问目标文件系统,并在获取完全操作权限时实行任意指令。
随着SQL注入等安全事件频繁发生,Web应用防护系统(网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)应运而生。WAF是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
SQL注入时,当我们遇到WAF,很多时候还是得首先静下来分析过滤系统到底过滤了哪些参数,该如何绕过。SQLMAP中的tamper自带了很多防过滤的绕过脚本,SQLMAP可以通过脚本拓展的方式调用Tamper模块对注入的参数修改用来达到绕过WEF的效果。
当然使用脚本之前需要确定的就是系统过滤了哪些关键字,比如空格、单引号、union、admin等等。
可以在URL中手工带入关键字,判断是否会被过滤掉。
如下图则关键字被过滤,需要想法绕过。
Sqlmap.py xxxxx --tamper“模块名”可调用–tamper中的模块进行绕过。
下面举例其中一条脚本:
“”"
Replaces apostrophe character (’) with its UTF-8 full width counterpart (e.g. ’ -> %EF%BC%87)

References:
    * http://www.utf8-chartable.de/unicode-utf8-table.pl?start=65280&number=128
    * http://lukasz.pilorz.net/testy/unicode_conversion/
    * http://sla.ckers.org/forum/read.php?13,11562,11850
    * http://lukasz.pilorz.net/testy/full_width_utf/index.phps

>>> tamper("1 AND '1'='1")
'1 AND %EF%BC%871%EF%BC%87=%EF%BC%871'
"""

"1 AND ‘1’='1"替换为utf8字符,用于过滤单引号。
最新版SQLMAP共计57个绕过脚本。其中大部分脚本主要用正则模块替换攻击载荷字符编码的方式绕WEF的检测规则。
下面给出全部脚本并进行分类:
序号 脚本名称 注释
1 0x2char 将每个编码后的字符转换为等价表达
2 a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>