sqlmap在默认情况下除了使用CHAR()函数防止出现单引号,没有对注入的数据进行修改,还可以使用--tamper参数对数据做修改来绕过WAF等设备,其中大部分脚本主要用正则模块替代攻击载荷字符编码的方式来绕过WAF的检测规则。
  sqlmap.py xxxx --tamper ”模块名“
  目前官方提供53个绕过脚本
  priority定义脚本的优先级,用于有多个tamper脚本的情况。
  dependencies函数声明该脚本使用/不适用的范围,可以为空。
  在日常使用中,我们会对一些网站是否有安全防护(WAF/IDS/IPS)进行试探,可以使用参数--identify-waf进行检测。下面介绍一些常用的tamper脚本。
  1、apostrophemask.py:将引号替换为UTF-8,用于过滤单引号
  2、base64encode.py:替换为base64编码
  3、multiplespaces.py:围绕SQL关键字添加多个空格
  4、space2plus.py:用+号替换为空格
  5、nonrecursivereplacement.py:作为双重查询语句,用双重语句替代预定义的SQL关键字(适用于非常弱的自定义过滤器,例如将SELECT替换为空)
  6、space2randomblank.py:将空格替换为其他有效字符
  7、unionalltounion.py:将UNION ALL SELECT替换为UNION SELECT
  8、securesphere.py:追加特制的字符串
  9、space2hash.py:将空格替换为#号,并添加一个随机字符串和换行符
  10、space2mssqlblank.py(mssql):将空格替换为其他空符号
  11、spce2mssqlhash.py:将空格替换为#号,并添加一个换行符
  12、between.py:用NOT BETWEEN 0 AND替换大于号(>),用BETWEN AND替换等号(=)
  13、percentage.py:ASP允许在每个字符前面添加一个%号
  14、sp_password.py:从DBMS日志的自动模糊处理的有效载荷中追加sp_password
  15、charencode.py:对给定的Payload全部字符使用URL编码(不处理已经编码的字符)
  16、randomcase.py:随机大小写
  17、charunicodeencode.py:字符串unicode编码
  18、space2comment.py:将空格替换为/**/
  19、equaltolike.py:将等号替换为like
  20、greatest.py:绕过对“>”的过滤,用GREATEST替换大于号
  以上测试通过的数据库类型和版本:
  mysql4、mysql5.0和mysql5.5
  orcale10g
  postgresql8.3、postgresql 8.4和postgresql9.0
  21、ifnull2ifisnull.py:绕过对IFNULL的过滤,替换类似IFNULL(A,B)为IF(ISNULL(A),B,A)
  测试通过的数据库类型和版本为MySQL 5.0和MySQL 5.5
  22、modsecurityversioned.py:过滤空格,使用MySQL内联注释的方式进行注入
  测试通过的数据库类型和版本为MySQL5.0
  23、space2mysalblank.py:将空格替换为其它空白符号(适用于MySQL)
  测试通过的数据库类型和版本为MySQL5.1
  24、modesecurityzeroversioned.py:使用MySQL内联注释的方式(/*!00000*/)进行注入
  测试通过的数据库类型和版本为MySQL 5.0
  25、space2mysqldash.py:将空格替换为--,并添加一个换行符
  26、bluecoat.py:在SQL语句之后用有效的随机空白符替换空格符,随后用LIKE替换等于号
  测试通过的数据库类型和版本为MySQL5.1和SGOS
  27、versionedkeywords.py:注释绕过
  28、halfversionedmorekeywords.py:当数据库为MySQL时绕过防火墙,在每个关键字之前添加MySQL版本注释
  测试通过的数据库类型和版本为MySQL 4.0.18和MySQL 5.0.22
  29、space2morehash.py:将空格替换为#号,并添加一个随机字符串和换行符
  测试通过的数据库类型和版本为MySQL5.1.14
  30、apostrophenullencode.py:用非法双字节unicode字符替换单引号
  31、appendnullbyte.py:在有效负荷的结束位置加载零字节字符编码
  32、chardoubleeencode.py:对给定的Payload全部字符使用双重URL编码(不处理已编码的字符)
  33、unmagicquotes.py:用一个多字节组合(%bf%27)和末尾通用注释也一起替换空格
  34、randomcomments.py:用/**/分割SQL关键字
  虽然SQLMAP自带的tamper可以做很多事情,但在实际环境中,往往比较复杂,可能会遇到很多情况,tamper不可能很全面地应对各种环境。

SQLMap自带绕过脚本tamper的讲解的更多相关文章

  1. sqlmap之waf绕过

    #一点补充 在老版本的安全狗中,可通过构造payload: http://xx.xx.xx.xx/sqli-labs/Less-2/index.php/x.txt?id=1 and 1=1 可通过in ...

  2. sqlmap和burpsuite绕过csrf token进行SQL注入检测

    利用sqlmap和burpsuite绕过csrf token进行SQL注入 转载请注明来源:http://www.cnblogs.com/phoenix--/archive/2013/04/12/30 ...

  3. Sqlmap Tamper绕过脚本详解

    apostrophemask.py 作用:将引号替换为UTF-8,用于过滤单引号 base64encode.py 作用:替换为base64编码 multiplespaces.py 作用:围绕SQL关键 ...

  4. 利用sqlmap和burpsuite绕过csrf token进行SQL注入 (转)

    问题:post方式的注入验证时遇到了csrf token的阻止,原因是csrf是一次性的,失效导致无法测试. 解决方案:Sqlmap配合burpsuite,以下为详细过程,参照国外牛人的blog(不过 ...

  5. Jmeter4.X - 使用本身自带的脚本录制功能录制脚本

    1.前言 记录对Jmeter评估研究的过程,本文记录使用apache网站提供的原Jmeter使用自带功能进行脚本录制. 本文可用于面向B/S WEB应用测试的工程师熟悉Jmeter使用.章节安排按照脚 ...

  6. Kafka压力测试(自带测试脚本)(单机版)

    一.测试目的 本次性能测试在正式环境下单台服务器上Kafka处理MQ消息能力进行压力测试.测试包括对Kafka写入MQ消息和消费MQ消息进行压力测试,根据10w.100w和1000w级别的消息处理结果 ...

  7. 利用script和scriptlet moniker绕过脚本白名单限制

    没事儿看了一下subtee和enigma0x3今年在BSides Nashville 2017上的演讲,觉得这两个猥琐男简直不能再猥琐了 :-)其中有一个猥琐小技巧,又可以让我们好好hunting一番 ...

  8. sqlmap的篡改绕过WAF

    space2comment.py Replaces space character (‘ ‘) with comments ‘/**/’ Example: * Input: SELECT id FRO ...

  9. Springboot 打包自带启动脚本

    一直以来,我都是 gradlew build java -jar xxx.jar 来启动springboot项目的.今天突然发现,springboot自动封装了一个bootJar的任务脚本. demo ...

  10. sqlmap详解

    sqlmap是一个自动化的sql注入工具,其主要功能是扫描.发现并利用给定URL的SQL注入漏洞,内置了很多绕过插件,支持的数据库有MySQL, Oracle,PostgreSQL, Microsof ...

随机推荐

  1. Docker 部署 Confluence(破解版)

    一. 说明 1.1 素材 本文采用素材如下: Docker镜像 Github链接(https://github.com/cptactionhank) 破解工具 Gitee链接(https://gite ...

  2. 利用python对websocket进行并发压测

    简述 产品经理鉴于运营反馈并对程序的websocket长连接保持怀疑的态度,让我对websocket服务器进行压力测试,我内心是拒绝的. 开发思路 查阅websocket的相关资料,查到python的 ...

  3. Typora设置代码块Mac风格三个圆点

    写作不停,美化不止! mac小圆点效果 原本代码块样式就挺....干净的,光秃秃的,太单调了: 是吧很丑,于是自己发挥改成了这样: 好吧还是太单调,也没好看到哪里去,于是隔了两天又重新改,DuangD ...

  4. Android 13 新特性及适配指南

    Android 13(API 33)于 2022年8月15日 正式发布(发布时间较往年早了一些),正式版Release源代码也于当日被推送到AOSP Android开源项目. 截止到笔者撰写这篇文章时 ...

  5. 17.ViewSet和Router

    REST框架为我们提高了一个更加抽象的ViewSet视图集,ViewSet提供一套自动的urlconf路由 ViewSet与View类几乎相同,不同之处在于它们提供诸如read或update之类的操作 ...

  6. Java 8 Stream API 引入和使用

    引入流 流是什么 流是Java API的新成员,它允许你以声明性的方式处理数据集合.可以看成遍历数据集的高级迭代.流可以透明地并行处理,无需编写多线程代码.我们先简单看一下使用流的好处.下面两段代码都 ...

  7. Eureka Server 实现在线扩容

    Eureka Server 实现在线扩容 作者:Grey 原文地址: 博客园:Eureka Server 实现在线扩容 CSDN:Eureka Server 实现在线扩容 需求 Eureka 是 Sp ...

  8. 2022HNCTF--WEB

    @ 目录 [Week1]Interesting_http 分析 payload [Week1]2048 分析 payload [Week1]easy_html 分析 paylaod [Week1]In ...

  9. Python基础之模块:3、os模块 sys模块 json模块 json实战

    目录 一.os模块 1.创建目录 2.删除目录 3.查看指定路径下目录内容 4.删除/重命名文件 5.获取/切换当前目录 6.动态获取项目根路径 7.拼接/切割路径 8.判断文件.目录是否存在 9.判 ...

  10. OS-HACKNOS-2.1靶机之解析

    靶机名称 HACKNOS: OS-HACKNOS 靶机下载地址 https://download.vulnhub.com/hacknos/Os-hackNos-1.ova 实验环境 : kali 2. ...