实验目的
普及SQLMAP的常用命令及--technique、-v等参数的使用方法。PS:面试时不要说打靶场什么东西,就说什么编码之类的
实验环境
攻击机:我寄人间雪满头
(1)操作系统:Windows10
(2)安装的应用软件:sqlmap、Burpsuite、FireFox浏览器插件Hackbar、
FoxyProxy等
(3)登录账号密码:操作系统帐号Admin,密码asdfghjkl
靶机:药罐子
(1)操作系统:本机(建议用虚拟机,特别是Linux)不过我太懒了[]~( ̄▽ ̄)~*
(2)安装的应用软件:Apache、MySQL(MariaDB)、PHP:DVWA、SQLi-Labs、
Webug3.0漏洞网站环境
(3)登录账号密码:操作系统帐号root,密码qwertyuio
实验原理
使用 SQLMAP对存在POST注入点的网站进行自动化注入时,通常可以采用以下简便方法:利用Burpsuite抓包并保存 Http request至文本文档,再利用sqlMap -r命令从文本文档中读取 Http request并实施注入入时,可以利用--technique参数指定 SQLMAP使用的探测技术,B表示布尔盲注,T表示时间盲注(延迟注入),E表示报错注入,U表示联合查询注入,S表示堆査询注入;利用-Ⅴ参数指定显示等级,当取值大于等于3时,将显示SQLMAP所使用的 payload详情。
实验步骤
本实验的目标是:以SQLi-Labs网站的Less-12为入口,利用 SQLMAP实施自动化SαL注入,获取SQLi-Labs网站的登录用户名和密码。
1.访问SQLi-Labs网站
http://靶机ip/sqli-labs-master/Less-12/
2.利用Burpsuite工具抓包(不会抓包点击链接查看)
(6)保存此HTTP请求包
在Burpsuite的Proxy->Intercept界面下选中刚刚拦截到的HTTP请求报文的全
部内容,单击鼠标右键,在弹出的菜单中选择copy(Ctrl+c),将请求包的内容拷贝至文
本文档nb.txt中,并复制保存至C盘根目录。(注意空格)
3.启动SQLMAP
python sqlmap.py -h
4.寻找注入点
使用以下命令自动寻找网站的注入点,并获取网站及后台数据库的基本信息:
python sqlmap.py -r C:\nb.txt --technique "U" -v 3
//其中,--technique“U"表示使用基于联合查询的技术,-v表示显示等级,当取值大于等于3时,将显示SOLMAP检测过程中所使用的payload详情。
(可根据实际需要) 选择y /n
5.获取所有数据库的库名
(1)使用以下命令获取所有数据库的库名:
python sqlmap.py -r C:\nb.txt --technique "U" -v 3 --dbs
检测结果如图所示
(2)使用以下命令获取网站当前所在数据库的库名:
python sqlmap.py -r C:\nb.txt --technique "U" -v 3 --current-db
检测结果:网站当前所在数据库的库名为securiy
6.获取security数据库中所有的表名
使用以下命令获取security数据库中所有的表名:
python sqlmap.py -r C:\nb.txt --technique "U" -v 3 -D security --tables
检测结果:security数据库中含有emails、uagents、referers、users四张表。
7.获取users表的全部字段名
使用以下命令获取users表的全部字段名:
python sqlmap.py -r C:\nb.txt --technique "U" -v 3 -D security -T users --columns
结果
8.获取users表id、username和password字段的全部值
使用以下命令获取users表id、username和password字段的全部值:
搞定
本次介绍了利用SQLMAP对存在POST型注入点的网站进行了自动化SQL
注入,普及了SQLMAP的r、-technique、v等参数的使用方法。
SQL注入-SQLMAP基础使用(十二)_Gjqhs的博客-CSDN博客
SQL注入-宽字节注入(十一)(面试热点)_Gjqhs的博客-CSDN博客
...
更多包括而不限于SQL注入的文章,关注我全部带走吧( •̀ ω •́ )✧