sqlmap实战
一、sqlmap配置
(1)python27安装
python2.7 下载地址
这里可以任意选择一个2.7的版本进行下载.
安装的时候最好自己新建一个python文件夹安装(我这里安装路径为D:\python\python2.7)
(2)sqlmap安装
1.sqlmap的 下载地址
这里点击压缩文件进行下载,解压的时候需要解压到到python2.7的路径下面
(我这里安装路径为D:\python\python2.7)
2.看到保证下面文件中有sqlmap
(3)配置环境变量
1.我的电脑打开属性
2.点击高级系统设置
3.点击环境变量
4.找到Path和PATHEXT两个系统变量进行配置
5.打开Path,加入两个环境变量
D:\python\python2.7\sqlmap
D:\python\python2.7
6.点击PATHEXT,在最后加上.py
7.全部设置完之后就配置好了
(4)验证是否配置完成
进入sqlmap文件
在地址栏输入cmd打开DOS
在命令行页面输入python sqlmap.py
显示这个样子说明配置成功
二、sqlmap语法
(1)常用语法及其说明
语法 | 说明 |
---|---|
-u | 指定目标URL |
-d | 链接数据库 |
–dbs | 列出所有数据库 |
–current | 列出当前数据库 |
–tables | 列出当前的表 |
–columnt | 列出当前的列 |
-D | 选择使用哪个数据库 |
-T | 选择使用哪个表 |
-C | 选择使用哪个列 |
–dump | 获取字段中数据 |
–dump -all | 拖库 |
–batch | 自动选择yes |
–smart | 启发式快速判断,节约时间 |
–forms | 尝试POST注入 |
-r | 加载文件中HTTP请求(保存请求包txt文件) |
-i | 加载文件中HTTP请求(保存请求包日志文件) |
-g | 自动获取Google搜索的前100个结果 |
-o | 开启所有默认性能优化 |
–tamper | 调用脚本进行注入 |
-v | 指定sqlmap的回显等级 |
–dalay | 设置多久访问一次 |
–os -shell | 获取主机shell,无权限不好用 |
-m | 批量操作 |
-c | 指定配置文件,按照配置文件执行 |
-data | data指定的数据会当作POST提交 |
-level | 设置探索等级(共5级) |
–timeout | 设置超时时间 |
–is -dba | 判断当先用户是否为管理员权限 |
–risk | 风险等级 |
–identify-waf | 检测防火墙类型 |
–param-del=“分隔符” | 设置参数的分隔符 |
–skip-urlencode | 不进行url编码 |
–keel-alive | 设置持久连接 |
–null-connection | 检索没有body响应的内容,常用于盲注 |
–thread | 最大为10设置多线程 |
(2)sqlmap的使用说明
以上参数均可配合操作,在实战中,还要注意敏感的数据库信息。
三、sqlmap实战
实战操作
-
查找数据库
命令:python sqlmap.py -u "URL" --dbs
在这里我们可以看到该数据库为mysql
也了解到这个站参在盲注和 union注入类型
这里很明显有一个很重要的数据库information_schema
扫描二维码关注公众号,回复: 14411106 查看本文章 -
查找数据库中的表
命令:python sqlmap.py -u "URL" -D 数据库名 --tables
看到数据库中有这样很明显的特殊的表名
-
查询表里面有什么字段
这里看到了很明显的adminuser、password、password2
-
查看密码
命令:python sqlmap.py -u “URL” -D 数据库名 -T password2 --dump
拿到密码,这很明显是md5加密
5. 找到md5破解网站
破解成功:密码为111111
6.最后就是找到后台验证密码是否正确,如果不正确,那就重复以上操作,查询表找到密码所在。
四、总结
sqlmap注入是一个非常繁琐的过程,需要有足够的耐心,这是我第一次尝试拿站(有授权),希望各位小伙伴在有授权的情况下拿站。