SqlMap详解

sqlmap是一个自动化的SQL注入工具,主要功能有扫描、发现并利用给定的URL的SQL注入漏洞(已找到注入点的URL),内置许多绕过插件,支持的数据库非常多不详细解释。

SqlMap采用的SQL注入

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

sqlmap的安装

(正常安装比较麻烦,所以会单独写一篇sqlmap安装)这里我是用的kali里自带的sqlmap(提一下,可以下个kali虚拟机,里面有很多渗透工具可以直接用)

sqlmap注入5步

1. 判断是否存在注入

(这里我用的是我自己搭建的dvwa环境里的sqlmap注入)
image

输入1时返回了数据并没有报错

image
image

当输入1'时返回的页面报错了说明它这个url存在sql注入

image

通过burpsuite抓到它的cookie值

image

输入sqlmap注入语句开始注入

image

这个样子说明注入成功

2. 获取数据库

语句:sqlmap -u “找到注入点的URL” --cookie=“值” --dbs

image
image

这些都是获取的数据库名

3. 查看指定数据库的所有表

语句:sqlmap -u “找到注入点的URL” --cookie=“值” -D “数据库名” --tables

image
image

我们就这样获取到了dvwa这个库的所有表名

4. 查看指定表的所有字段

语句:sqlmap -u “找到注入点的URL” --cookie=“值” -D“数据库名” -T“表名” --columns

image
image

左边这些都是字段名,右边是数据类型

5.查看指定字段的所有内容

语句:sqlmap -u “找到注入点的URL” --cookie=“值” -D“数据库名” -T“表名” -C“字段名” --dump

image
image

现在就获取到了这两个字段的内容了

如果遇到问题可以在下评论看到会回复