在我们练习sql注入的时候,除了手注我们还需要其他的一些辅助工具。这里就简单介绍一下常见的sql注入工具:sqlmap
官方下载地址:sqlmap: automatic SQL injection and database takeover tool
SQLMAP是开源的自动化SQL注入工具,由Python写成,完全支持MySQL、Oracle、PostgreSQL、MSSQL、Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统;通常我们在文件夹内 输入cmd
然后我们就会进入cmd 在cmd输入sqlmap.py 看到如图所示的就是进入到sqlmap中了
既然是sql注入的工具 那我们就有些基本的命令
-u 指定目标URL (可以是http协议也可以是https协议)
-d 连接数据库
--dbs 列出所有的数据库
--current-db 列出当前数据库
--tables 列出当前的表
--columns 列出当前的列
-D 选择使用个数据库
-T 选择使用哪个表
-C 选择使用哪个列
- --dump 获取字段中的数据
--batch 自动选择yes
--smart 启发式快速判断,节约浪费时间
--forms 尝试使用post注入
-r 加载文件中的HTTP请求(本地保存的请求包txt文件)
-l 加载文件中的HTTP请求(本地保存的请求包日志文件)
-g 自动获取Google搜索的前一百个结果,对有GET参数的URL测试
-o 开启所有默认性能优化
--tamper 调用脚本进行注入
-v 指定sqlmap的回显等级
--delay 设置多久访问一次
--os-shell 获取主机shell,一般不太好用,因为没权限
-m 批量操作
-c 指定配置文件,会按照该配置文件执行动作
-data data指定的数据会当做post数据提交
-timeout 设定超时时间
--level 设置注入探测等级
--risk 风险等级
--identify-waf 检测防火墙类型
--param-del="分割符" 设置参数的分割符
--skip-urlencode 不进行url编码
--keep-alive 设置持久连接,加快探测速度
--null-connection 检索没有body响应的内容
我们在sqlmap中输入
sqlmap.py -u http://xxx.com --dbs --batch -level 5
我们可以看到
由于我没有调用--delay 所以我们看到基本上都是很快的去访问
我们看下加入--delay之后
调用--delay 我设置的是10 所以 sqlmap就间隔十秒访问一下我输入的url
水下 明天第二章