zoukankan      html  css  js  c++  java
  • sqlmap从入门到精通-第七章-7-1 绕过WAF脚本-apostrophemask.py

    7.7 sqlmap使用tamper绕过WAF

    7.7.1 tamper简介

    1. tamper简介
    sqlmap压缩包解压后根目录下有个tamper的文件夹,里面有58个python脚本,其中剔除__init__.py这个文件就含有57个脚本,这些脚本对应不同的绕过WAF的功能模块

    2. tamper脚本使用
    tamper是sqlmap绕过功能,使用方式:python sqlmap.py --tamper="xxoo.py" 或者 python sqlmap.py --tamper="xxoo.py,ooo.py" 同时执行多个tamper脚本

    例如:
    python sqlmap.py -u http://106.54.35.126/Less-1/?id=1 --dbs --tamper "appendnullbyte.py"

    7.7.2 sqlmap WAF检测
    WAF检测的方式一般是基于HTTP头进行检测,市面上用于识别WAF有一个比较好的工具wafw00f和sqlmap这两款工具识别

    对于识别WAF工具的地址:https://github.com/EnableSecurity/wafw00f

    sqlmap使用识别WAF的方式:python sqlmap.py -u http://106.54.35.126/Less-1/?id=1 --identify-waf

    7.7.3 tamper绕过WAF脚本列表注释

    sqlmap我目前使用的版本是1.4.5.27含有57个绕过WAF的脚本,按照字母顺序来分析,我这里会详细给大家演示,所以这一节会分很多小节来演示,所以会很长

    1. apostrophemask.py脚本
    通过UTF-8全角字符替换单引号字符,在tamper中对原始payload("1 AND '1'='1") 进行替换,将单引号替换为"%EF%BC%87",相当于%EF%BC%87=' ,这里是适用于所有数据库

    实践测试:

    测试地址:python sqlmap.py -u http://106.54.35.126/Less-1/?id=1 --dbs --tamper="apostrophemask.py" --proxy="http://127.0.0.1:8080"

     测试期间Burpsuite抓包结果:

    使用Burpsuite解码看看

     发现结果并不是单引号,作者书中解释的是UTF-8全角字符,大家可以自己去测试,我认为与编码有关。大家可以测试是否是解码之后为单引号,我这里使用sqlmap进行测试,结果大家看到了,根本无法注入,实际是存在SQL注入

  • 相关阅读:
    C++解析一些我们需要的数据
    C语言0数组、柔性数组使用介绍
    正点原子T100智能焊台-试用-拆机测评
    简单工厂模式、工厂模式、抽象工厂模式比较
    一次小模块的使用过程-LC12S无线模块介绍
    正点原子DS100拆解全过程-硬件工程师必备
    STM32通过rosserial接入ROS通讯开发
    Linux下实现Firewalld Net 外网端口转发至内网
    Windows中使用netsh portproxy端口转发
    低延迟网穿透工具FRP
  • 原文地址:https://www.cnblogs.com/autopwn/p/13426597.html
Copyright © 2011-2022 走看看