前言:sqimap是一个开源的渗透测试工具,它可以自动化检测和利用SQL注入缺陷以及接管数据库服务器的过程。它有一个强大的检测引擎,许多适合于终极渗透测试的小众特性和广泛的开关,从数据库指纹、从数据库获
取数据到访问底层文件系统和通过带外连接在操作系统上执行命令。
官方网址:http://sqlmap.org/
本文是用于学习,请自觉维护网络安全。
一、安装
1.1 环境准备
使用python2.X的环境
注意: 我其实是3.8.10版本,我没有使用2.X,唯一区别是我安装了一下,发现没有问题
pip install pymysql
1.2 下载sqlmap
官网:sqlmap: automatic SQL injection and database takeover tool
1.3 解压使用
直接解压即可使用
1.3.1 查看版本
python sqlmap.py --version
1.3.2 查看帮助
python sqlmap.py -h
# 高级帮助
python sqlmap.py -hh
二、使用kali linux 来使用sqlmap
2.1 kali linux安装
2.2 kali linux升级sqlmap
2.2.1 更新软件包列表:
打开终端,输入以下命令来更新Kali Linux的软件包列表
sudo apt update
2.2.2 升级sqlmap:
输入以下命令来升级sqlmap到最新版本:
sudo apt install --only-upgrade sqlmap
2.2.3 验证升级:
升级完成后,可以通过输入以下命令来检查sqlmap的版本号,以确认是否已经成功更新到最新版本
sqlmap --version
更多升级方法点击 ===》 其他升级方法
三、sqlmap获取目标
3.1 sqlmap直连数据库
sqlmap -d "mysql://root:密码@IP:端口/dora" -f --banner -users
# windows执行 sqlmap 换成 python sqlmap.py 即可
3.2 sqlmap进行URL探测
# 这是在kali linux里面执行的
sqlmap -u "http://192.168.1.100/sqli/Less-1/index.php?id=1" --banner
3.3 sqlmap文件读取目标
3.3.1 -l 从burpsuite proxy 或webscarab proxy日志文件读取http请求
配置burpsuite
配置浏览器代理
windows配置
kali linux的火狐浏览器配置代理
浏览器输入
先配置好burp suite下图
浏览器输入网址之后,通过点击forward
将第一步文件放到sqlmap 文件下
执行命令
python sqlmap.py -l test
3.3.2 -x 从sitemap.xml站点地图读取目标
略
3.3.3 -m从多行文本格式读取多个目标
多行文本格式文件如下
3.3.4 -r 从文本文件中读取http请求
将从burp suit获取的信息存储到一个文本文件,然后执行命令进行探测
3.3.5 -c 从配置文件sqlmap.conf中读取
上面的方法,都可以从这里指定文件执行
例如配置url:
python sqlmap.py -c sqlmap. conf
3.4 sqlmap Google批量扫注入
由于墙的原因,无法实现,有能力者,实验
四、sqlmap设置请求参数
4.1 sqlmap设置HTTP方法
4.2 sqlmap设置post提交参数
下图红色方框信息可以通过burp suite 抓取 (我自己使用的时候一定要intercept ,然后通过forword获取信息)
发现问题:
在burp suite 的action
只替换admin
点击go
1、在kali机器上的使用火狐浏览器打开被测系统打开到登录页面
2、kali上的火狐设置代理,找不到搜索network
3、打开burp suite 的截断
3、在浏览器点击登录,到burpsuite上查看截取信息
4、打开sqlmap
切换到root用户
输入
sqlmap -u "http://199.28.10.135:90/login.php" --data="admin&password=passeord&Login=Login&user_token=3a04485e24d70e0e0e0a76ad7b974026" -f --banner --dbs --users
4.3 sqlma设置参数分隔符
使用--param-del 指定分隔符
4.4 sqlmap设置cookie头
4.5 sqlmap设置user-agent
4.6 sqlmap设置host头
4.7 sqlmap设置referer
4.8 sqlmap设置额外http头
4.9 待补充
DVWA靶场系统环境搭建
1、docker环境安装
docker pull citizenstig/dvwa
docker run -d -p 90:80 --name dvwa --restart always citizenstig/dvwa:latest
2、访问
ip:端口
admin passwod