当前位置:   article > 正文

SQLMAP基本应用详解(实战演示)_sqlmap实战

sqlmap实战


一、SQLMAP简介

SQLMAP自动化注入工具
具有扫描、发现并利用给定的URL的SQL漏洞
在这里插入图片描述

下载:

官网
Github
使用教程

功能

1.判断可注入的参数
2.判断可以使用哪一种sql类型注入
3.从数据库读取数据
4.判断数据库类型

支持类型

1.基于布尔盲注:根据返回页面判断条件真假的注入
2.基于时间盲注:不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(页面返回时间是否增加)来判断
3.基于联合查询注入:可以使用union 的注入
4.基于堆查询注入:同时执行多条语句的注入
5.基于报错注入:页面会返回错误信息,或者把注入语句结果返回到页面中

支持数据库类型

关系型数据库MySQL、Oracle、PostgreSQL、Microsoft SQLServer、HSQLDB、SQLite、Firebird等

检测流程

1.网站连通性检测:检测目标数据库连接状态
2.WAF检测:是否受到WAF保护
3.网页稳定性检测
4.参数动态性检测:参数是否具有动态性
5.启发式注入检测:探测该参数是否动态性,是否存在注入点

误报检测机制

误报检测:SQLMAP的布尔盲注,时间盲注判断注入点,存在误报可能。

检测算法—页面相似度对比技术

(在各种注入技术大量使用)
在SQLMAP检测整个过程中,会有一个原始响应的定义,指的是在网站连通性检测过程中,如果网站成功响应,则把该响应定义为原始响应(包括状态码、HTTP响应头、HTTP响应体)。一个HTTP请求成功响应之后,将与原始响应进行对比,得出对比结果,算法输出为True表示当前响应与原始响应相似,算法输出为False表示当前响应与原始响应不相似。

检测算法—高斯分布识别响应机制

(在union注入和时间盲注过程使用)
网站的响应是基于逻辑的,如果一组请求,网站的处理逻辑相同,那么响应几乎也是相同的。如果某一个响应出现了变化,则可以人为该网站处理逻辑变了,这种逻辑的变化可能正是因为注入成功了。

二、SQLMAP基本使用

1.-u参数(直接输入目标URL)

sqlmap -u www.baidu.com/id=1
  • 1

在这里插入图片描述
1.判断可注入的参数
2.判断sql注入类型来注入
3.识别所有存在的注入类型
4.判定数据库版本,开发语言,操作系统版本

用法

sqlmap -u (URL) --current-db //爆当前数据库
sqlmap -u (URL) -D (数据库名) --tables //爆表名
sqlmap -u (URL) -D (数据库名) -T (表名) --columns //爆字段名
sqlmap -u (URL) -D (数据库名) -T (表名) -C (字段名1,字段名2)--dump //显示数据
  • 1
  • 2
  • 3
  • 4

2.-r参数(从文本文件中获取http请求)

sqlmap -r /user/x.txt
  • 1

使用该命令必须指明x.txt(保存http请求包)文件所在的绝对路径

1.判断可注入的参数
2.判断sql注入类型来注入
3.识别所有存在的注入类型
4.判定数据库版本,开发语言,操作系统版本

用法

1.利用BP截取http request报文
在这里插入图片描述

2.将报文保存在x.txt中
3.利用sqlmap对涉及到的目标网站进行注入

sqlmap -r /user/x.txt --current-db   //爆数据库名
  • 1

4.跟上面提到的一样爆库名、表名、字段名

3.-m参数(从文件中取出保存的URL进行检测)

sqlmap -m /user/a.txt 
  • 1

使用命令必须指明a.txt(保存多项URL)文件所在的绝对路径

三、实战演示

声明:演示网站是作为提交公益src的,并未对网站数据库泄露
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/453313
推荐阅读
相关标签
  

闽ICP备14008679号