Enumeration 枚举查询信息
--current-user:查当前数据库管理系统的账号
--current-db:当前数据库管理系统的表
--hostname:机器主机名
--users:查系统所有的用户账号
--privileges -U 用户名:查询用户权限
跟-U就是查询对应的用户权限,不跟-U查询所有的用户权限,-CU查询当前用户
-D 数据库 --tables:查询数据库对应的表名
-D 数据库 -T users --columns:已知库,表,查询对应的列
-T users -D dvwa -C user --columns:查询列中详细信息
在查询库中,可以先将系统库排除--exclude-sysdbs
--batch 批处理 一切的选项都可以用默认选,不需要每次回车选择
--start --stop 防止查询数量过多,可以先查询100条 --start 1 --stop 100
Dump数据
--dump -C -T -D --exclude-sysdbs
可以在root/.sqlmap/output/192.1XX.XX.XXX/dump/dvwa/查看对应csv文件
burte force暴力破解参数
上面得查询是我们已有可以查询数据库的账号,但是大多数情况下无法直接查询,只能进行暴力爆破
--common-tables
--common-columns 暴力破解表和列
File system文件系统访问
--file-read = "/etc/passwd" 读取目标文件
--file-write="shell.php" 写入文件
--file-dest="tmp/shell.php" 目标路径
Windows Registory 操作注册表
--reg-read 读
--reg-add 增
--reg-del 删
--reg-key 键
--reg-value 值
--reg-data 数据
前提是有权对注册表进行操作
General 一般性参数
我们查询的信息默认会存放在.sqlmap/output里面
--crawl 从起始位置爬网深度
--csv-del=";" 保存下来的csv文件中间分隔以分号分隔
--dbms-cred:指定数据库账号去直接查询
--flush-session:清空session,如果我们将一条命令重复执行,第二次之后执行,sqlmap没有像服务器请求,直接查看我们之前保存的session记录
--fresh-queries: 同理上条 忽略session结果,不会删除session,但是会重新再服务器提交请求
-hex :dump时候以16进制进行保存
--output-dir="/tmp" 指定输出目录
--parse-errors:分析数据库内建报错信息
--save:将命令保存成配置文件
--check-waf:检测waf/ips/ids
--identify-waf:彻底检查waf/ips/ids
--purge-output:清除output文件夹
sqlmap向导:--wizard
问题:对于常见的WAF绕过方式需要了解