Sqlmap参数详解手册:一站式查询指南

Sqlmap工具内的各种参数的含义对照表

SQL注入类的相关文章:https://blog.youkuaiyun.com/counting123/article/details/155390012?fromshare=blogdetail&sharetype=blogdetail&sharerId=155390012&sharerefer=PC&sharesource=counting123&sharefrom=from_link

基础选项

选项说明
-h, --help显示基础帮助信息并退出
-hh显示高级帮助信息并退出
–version显示程序版本号并退出
-v VERBOSE详细程度等级:0-6(默认 1)

目标(Target)

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

选项说明
-u URL, --url=URL目标 URL(例如:“http://www.site.com/vuln.php?id=1”)
-d DIRECT直接数据库连接字符串
-l LOGFILE从 Burp 或 WebScarab 代理日志文件解析目标
-m BULKFILE扫描文本文件中指定的多个目标
-r REQUESTFILE从文件加载 HTTP 请求
-g GOOGLEDORK将 Google 黑客语法结果作为目标 URL 处理
-c CONFIGFILE从配置 INI 文件加载选项

请求(Request)

用于指定连接目标 URL 的方式

选项说明
-A AGENT, --user-agent=AGENTHTTP User-Agent 头信息值
-H HEADER, --header=HEADER额外的 HTTP 头(例如:“X-Forwarded-For: 127.0.0.1”)
–method=METHOD强制使用指定的 HTTP 方法(例如:PUT)
–data=DATA通过 POST 发送的数据字符串(例如:“id=1”)
–param-del=PDEL参数值的分隔字符(例如:&)
–cookie=COOKIEHTTP Cookie 头信息值(例如:“PHPSESSID=a8d127e…”)
–cookie-del=CDELCookie 值的分隔字符(例如:;)
–live-cookies=LCFILE用于加载最新值的实时 Cookie 文件
–load-cookies=LCFILE加载 Netscape/wget 格式的 Cookie 文件
–drop-set-cookie忽略响应中的 Set-Cookie 头
–http1.0使用 HTTP 1.0 版本(旧版本)
–http2使用 HTTP 2 版本(实验性)
–mobile通过 HTTP User-Agent 头模拟智能手机
–random-agent使用随机选择的 HTTP User-Agent 头值
–host=HOSTHTTP Host 头信息值
–referer=REFERERHTTP Referer 头信息值
–headers=HEADERS额外的 HTTP 头(例如:“Accept-Language: fr\nETag: 123”)
–auth-type=AUTHTYPEHTTP 认证类型(Basic、Digest、Bearer 等)
–auth-cred=CREDSHTTP 认证凭据(用户名:密码)
–auth-file=AFILEHTTP 认证 PEM 证书 / 私钥文件
–abort-code=ACODES遇到(问题性)HTTP 错误码时中止(例如:401)
–ignore-code=ICODES忽略(问题性)HTTP 错误码(例如:401)
–ignore-proxy忽略系统默认代理设置
–ignore-redirects忽略重定向尝试
–ignore-timeouts忽略连接超时
–proxy=PROXY使用代理连接目标 URL
–proxy-cred=PCREDS代理认证凭据(用户名:密码)
–proxy-file=PFILE从文件加载代理列表
–proxy-freq=PFREQ从指定代理列表切换代理前的请求次数
–tor使用 Tor 匿名网络
–tor-port=TORPORT设置非默认的 Tor 代理端口
–tor-type=TORTYPE设置 Tor 代理类型(HTTP、SOCKS4 或默认 SOCKS5)
–check-tor检查 Tor 是否正确使用
–delay=DELAY每次 HTTP 请求之间的延迟(秒)
–timeout=TIMEOUT连接超时前的等待时间(默认 30 秒)
–retries=RETRIES连接超时时的重试次数(默认 3 次)
–retry-on=RETRYON当内容匹配正则表达式时重试请求(例如:“drop”)
–randomize=RPARAM为指定参数随机更改值
–safe-url=SAFEURL测试期间频繁访问的安全 URL
–safe-post=SAFEPOST发送到安全 URL 的 POST 数据
–safe-req=SAFERFILE从文件加载安全 HTTP 请求
–safe-freq=SAFEFREQ访问安全 URL 之间的常规请求次数
–skip-urlencode跳过负载数据的 URL 编码
–csrf-token=CSRFT用于存储反 CSRF 令牌的参数
–csrf-url=CSRFURL用于提取反 CSRF 令牌的访问 URL
–csrf-method=CSRFM访问反 CSRF 令牌页面时使用的 HTTP 方法
–csrf-data=CSRFD访问反 CSRF 令牌页面时发送的 POST 数据
–csrf-retries=CSRFR反 CSRF 令牌获取的重试次数(默认 0 次)
–force-ssl强制使用 SSL/HTTPS
–chunked使用 HTTP 分块传输编码(POST)请求
–hpp使用 HTTP 参数污染方法
–eval=EVALCODE请求前执行指定的 Python 代码(例如:“import hashlib;id2=hashlib.md5 (id).hexdigest ()”)

优化(Optimization)

用于优化 sqlmap 的性能

选项说明
-o开启所有优化开关
–predict-output预测常见查询输出
–keep-alive使用持久 HTTP (s) 连接
–null-connection仅获取页面长度,不获取实际 HTTP 响应体
–threads=THREADS最大并发 HTTP (s) 请求数(默认 1)

注入(Injection)

用于指定测试参数、自定义注入负载及篡改脚本

选项说明
-p TESTPARAMETER可测试的参数
–skip=SKIP跳过对指定参数的测试
–skip-static跳过对非动态参数的测试
–param-exclude=PEXCLUDE用于排除测试参数的正则表达式(例如:“ses”)
–param-filter=PFILTER按位置选择可测试参数(例如:“POST”)
–dbms=DBMS强制指定后端数据库管理系统(DBMS)
–dbms-cred=DBCREDSDBMS 认证凭据(用户名:密码)
–os=OS强制指定后端 DBMS 的操作系统
–invalid-bignum使用大数字使值无效
–invalid-logical使用逻辑运算使值无效
–invalid-string使用随机字符串使值无效
–no-cast关闭负载转换机制
–no-escape关闭字符串转义机制
–prefix=PREFIX注入负载的前缀字符串
–suffix=SUFFIX注入负载的后缀字符串
–tamper=TAMPER使用指定脚本篡改注入数据

检测(Detection)

用于自定义检测阶段的配置

选项说明
–level=LEVEL测试级别(1-5,默认 1)
–risk=RISK测试风险等级(1-3,默认 1)
–string=STRING查询结果为 True 时匹配的字符串
–not-string=NOTSTRING查询结果为 False 时匹配的字符串
–regexp=REGEXP查询结果为 True 时匹配的正则表达式
–code=CODE查询结果为 True 时匹配的 HTTP 状态码
–smart仅在启发式检测为阳性时执行彻底测试
–text-only仅基于文本内容比较页面
–titles仅基于标题比较页面

技术(Techniques)

用于调整特定 SQL 注入技术的测试

选项说明
–technique=TECH要使用的 SQL 注入技术(默认 “BEUSTQ”)
–time-sec=TIMESECDBMS 响应延迟时间(默认 5 秒)
–disable-stats禁用检测延迟的统计模型
–union-cols=UCOLS测试 UNION 查询注入的列范围
–union-char=UCHAR用于暴力破解列数的字符
–union-from=UFROMUNION 查询注入中 FROM 部分使用的表
–union-values=UVALSUNION 查询注入中使用的列值
–dns-domain=DNSDOMAINDNS 数据外渗攻击使用的域名
–second-url=SECURL用于查找二阶响应的结果页面 URL
–second-req=SECRFILE从文件加载二阶 HTTP 请求

指纹识别(Fingerprint)

选项说明
-f, --fingerprint执行详细的 DBMS 版本指纹识别

枚举(Enumeration)

用于枚举数据库信息、结构及数据

选项说明
-a, --all获取所有信息
-b, --banner获取 DBMS 标识信息
–current-user获取 DBMS 当前用户
–current-db获取 DBMS 当前数据库
–hostname获取 DBMS 服务器主机名
–is-dba检测 DBMS 当前用户是否为 DBA
–users枚举 DBMS 用户
–passwords枚举 DBMS 用户密码哈希
–privileges枚举 DBMS 用户权限
–roles枚举 DBMS 用户角色
–dbs枚举 DBMS 数据库
–tables枚举 DBMS 数据库表
–columns枚举 DBMS 数据库表列
–schema枚举 DBMS 模式
–count获取表的条目数量
–dump导出 DBMS 数据库表条目
–dump-all导出所有 DBMS 数据库表条目
–search搜索列、表和 / 或数据库名称
–comments枚举期间检查 DBMS 注释
–statements获取 DBMS 上正在执行的 SQL 语句
-D DB要枚举的 DBMS 数据库
-T TBL要枚举的 DBMS 数据库表
-C COL要枚举的 DBMS 数据库表列
-X EXCLUDE不枚举的 DBMS 数据库标识符
-U USER要枚举的 DBMS 用户
–exclude-sysdbs枚举表时排除 DBMS 系统数据库
–pivot-column=PCOL透视列名称
–where=DUMPWHERE表导出时使用的 WHERE 条件
–start=LIMITSTART要获取的第一个表导出条目
–stop=LIMITSTOP要获取的最后一个表导出条目
–first=FIRSTCHAR要获取的查询输出首字符
–last=LASTCHAR要获取的查询输出尾字符
–sql-query=SQLQ要执行的 SQL 语句
–sql-shell交互式 SQL shell 提示符
–sql-file=SQLFILE从指定文件执行 SQL 语句

暴力破解(Brute force)

用于执行暴力破解检查

选项说明
–common-tables检查常见表是否存在
–common-columns检查常见列是否存在
–common-files检查常见文件是否存在

用户自定义函数注入(User-defined function injection)

用于创建自定义用户定义函数

选项说明
–udf-inject注入自定义用户定义函数
–shared-lib=SHLIB共享库的本地路径

文件系统访问(File system access)

用于访问数据库底层文件系统

选项说明
–file-read=FILE从后端 DBMS 文件系统读取文件
–file-write=FILE将本地文件写入后端 DBMS 文件系统
–file-dest=FILE后端 DBMS 写入文件的绝对路径

操作系统访问(Operating system access)

用于访问数据库底层操作系统

选项说明
–os-cmd=OSCMD执行操作系统命令
–os-shell交互式操作系统 shell 提示符
–os-pwnOOB(带外)shell、Meterpreter 或 VNC 提示符
–os-smbrelay一键获取 OOB shell、Meterpreter 或 VNC
–os-bof存储过程缓冲区溢出利用
–priv-esc数据库进程用户权限提升
–msf-path=MSFPATHMetasploit Framework 的本地安装路径
–tmp-path=TMPPATH临时文件的远程绝对路径

Windows 注册表访问(Windows registry access)

用于访问 Windows 系统注册表

选项说明
–reg-read读取 Windows 注册表键值
–reg-add写入 Windows 注册表键值数据
–reg-del删除 Windows 注册表键值
–reg-key=REGKEYWindows 注册表键
–reg-value=REGVALWindows 注册表键值
–reg-data=REGDATAWindows 注册表键值数据
–reg-type=REGTYPEWindows 注册表键值类型

通用(General)

用于设置通用工作参数

选项说明
-s SESSIONFILE从存储的(.sqlite)文件加载会话
-t TRAFFICFILE将所有 HTTP 流量记录到文本文件
–abort-on-empty结果为空时中止数据获取
–answers=ANSWERS设置预定义答案(例如:“quit=N,follow=N”)
–base64=BASE64P包含 Base64 编码数据的参数
–base64-safe使用 URL 和文件名安全的 Base64 编码(RFC 4648)
–batch不询问用户输入,使用默认行为
–binary-fields=BFIELDS包含二进制值的结果字段(例如:“digest”)
–check-internet评估目标前检查互联网连接
–cleanup清理 DBMS 中 sqlmap 相关的 UDF 和表
–crawl=CRAWLDEPTH从目标 URL 开始爬取网站
–crawl-exclude=CEXCLUDE用于排除爬取页面的正则表达式(例如:“logout”)
–csv-del=CSVDELCSV 输出的分隔字符(默认 “,”)
–charset=CHARSET盲注字符集(例如:“0123456789abcdef”)
–dump-file=DUMPF将导出数据存储到自定义文件
–dump-format=DUMPFMT导出数据格式(默认 CSV、HTML 或 SQLITE)
–encoding=ENCODING数据获取使用的字符编码(例如:GBK)
–eta显示每个输出的预计完成时间
–flush-session清空当前目标的会话文件
–forms解析并测试目标 URL 上的表单
–fresh-queries忽略会话文件中存储的查询结果
–gpage=GOOGLEPAGE使用指定页码的 Google 黑客语法结果
–har=HARFILE将所有 HTTP 流量记录到 HAR 文件
–hex数据获取时使用十六进制转换
–output-dir=OUTDIR自定义输出目录路径
–parse-errors解析并显示响应中的 DBMS 错误信息
–preprocess=PREPROC用于预处理(请求)的指定脚本
–postprocess=POSTPROC用于后处理(响应)的指定脚本
–repair重新导出带有未知字符标记(?)的条目
–save=SAVECONFIG将选项保存到配置 INI 文件
–scope=SCOPE用于过滤目标的正则表达式
–skip-heuristics跳过漏洞的启发式检测
–skip-waf跳过 WAF/IPS 防护的启发式检测
–table-prefix=TPREFIX临时表使用的前缀(默认:“sqlmap”)
–test-filter=TESTF按负载和 / 或标题选择测试(例如:ROW)
–test-skip=TESTS按负载和 / 或标题跳过测试(例如:BENCHMARK)
–time-limit=TIMELIMIT运行时间限制(秒)(例如:3600)
–unsafe-naming禁用 DBMS 标识符转义(例如:“user”)
–web-root=WEBROOTWeb 服务器文档根目录(例如:“/var/www”)

其他(Miscellaneous)

不属于上述类别的其他选项

选项说明
-z MNEMONICS使用简短助记符(例如:“flu,bat,ban,tec=EU”)
–alert=ALERT发现 SQL 注入时运行主机 OS 命令
–beep遇到问题和 / 或发现漏洞时发出蜂鸣声
–dependencies检查缺失的(可选)sqlmap 依赖项
–disable-coloring禁用控制台输出着色
–disable-hashing禁用表导出的哈希分析
–list-tampers显示可用的篡改脚本列表
–no-logging禁用文件日志记录
–no-truncate禁用控制台输出截断(例如:长条目…)
–offline工作在离线模式(仅使用会话数据)
–purge安全删除 sqlmap 数据目录中的所有内容
–results-file=RFILE多目标模式下 CSV 结果文件的位置
–shell交互式 sqlmap shell 提示符
–tmp-dir=TMPDIR存储临时文件的本地目录
–unstable为不稳定连接调整选项
–update更新 sqlmap
–wizard面向初学者的简单向导界面
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值