sql注入工具--Sqlmap
Sqlmap是一款自动化sql注入的工具,其功能强大,支持多种数据库,包括mysql,sqlserver等主流的数据库,采用独特的sql注入方法来达到自动化注入扫描漏洞的目的。
1)基于布尔的盲注(Type:boolean-based blind),即可以根据返回页面判断条件真假的注入。
2)基于时间的盲注(Type:time blind),即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3)基于报错注入(Type:error-based),即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
4)联合查询注入(union query),可以使用union的情况下的注入。
5)堆查询注入,可以同时执行多条语句的执行时的注入
1、sqlmap环境搭建
(1)python2.7版本下载
(2)sqlmap下载:http://sqlmap.org/,将sqlmap文件放在python2.7的文件夹下
(3)环境变量设置,添加sqlmap文件夹的环境变量
(4)打开命令窗口,输入sqlmap.py -h则安装成功
2、测试环境搭建
搭建一个包含了sql注入,xss等漏洞的测试环境以便学习sql注入知识点。
安装php环境:由于源码是php的则需要安装php的环境
(1)安装php环境:wampserver下载安装:Apache+mysql+php集成安装环境,简化该集合环境安装配置流程,减少了环境配置的繁琐
问题1:安装完成后打开时报错:
解决方案:http://blog.csdn.net/xiaoqiang_0719/article/details/52785604
下载安装:
重启电脑即可。如果还是弹出该错误,首先检查下下载的软件是32位的还是64位的,第二可以卸载wampserver重新下载安装即可。
问题2:wampserver本地环境启动后显示橙色不显示绿色
解决方案:http://www.xuewangzhan.net/wenti/10270.html
80端口号被占用,修改端口号即可
将wampserver>bin>apache>apachex.xx>httpd.conf文件以下信息的端口号换成8080
Listen 0.0.0.0:80
Listen [::0]:80
改成:
Listen 0.0.0.0:8080
Listen [::0]:8080
右键图标refresh即可。
(2)准备测试源码dvwa:https://github.com/ethicalhack3r/DVWA
a.下载dvwa解压,解压到运行代码的位置,即将解压的安装包放在wampserver下的www文件夹下
b.复制dvwa解压的路径
c.图标鼠标右键Apache>http.config,修改文件
d.添加host:计算机>c盘>windows>system>drivers>etc>hosts,文件结尾添加127.0.0.1 dvwa的域名:dvwa.localhost,即127.0.0.1 dvwa.localhost,修改时显示权限不足时,在弹出的窗
口点击是即可
e.测试是否域名添加成功:打开命令窗口,ping dvwa.localhost
f.重启wampserver
(3)修改配置文件,添加数据库账号
a.打开dvwa>config>复制config文件,将文件后缀名改为php结尾
b.打开config.inc.php,修改用户名,密码,端口号(3306)
用户名为root,密码修改为空,端口号5432改为3306
c.浏览器打开http://localhost:8080/dvwa/setup.php,进入安装界面
d.点击Create/Reset Database创建数据库,过会页面会自动跳转到登录页面:
e.数据库的登录账号和密码获取:右键dvwa图标>phpMyadmin>users表:admin/password
f.登录dvwa,默认的用户名和密码为:admin/password,进入到以下的页面
3、sqlmap使用
(1)获取系统的基本信息
登录dvwa,设置安全的等级,设置为low,网站的安全等级为low时才能进行注入测试。
点击SQL injection输入注入的信息,复制注入信息后提交的url
a.sqlmap的参数格式:
sqlmap.py -u 目标地址
sqlmap.py -u "http://localhost:8080/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="" --batch #不加入地址后面的#
查找注入点以及可注入的方式,得到数据库是mysql,以及数据库的版本,注入点的参数为id
sqlmap.py -r 保存的请求头文件:
谷歌浏览器>测试的网站右键>检查
>Networks>F5重新加载网站>选中网址信息右键>copy>copy request header
在sqlmap文件夹下新建一个文本文件重新命名,将复制的头文件的信息粘贴保存
(2)sqlmap数据库检测
通过sqlmap获取数据库的数据
a.查看数据库
sqlmap.py -u 目标地址 --cookie=“” --dbs:查看数据库名称
查找大数据库的名称为‘dvwa’
b.扫描数据表
查看数据库表名称:sqlmap.py -u 目标地址 --cookie=“” --table:查询出所有数据库的所有表
查询数据表数据:sqlmap.py -u 目标地址 --cookie=“” --dump:查询出所有数据表的所有数据
c.导出数据
sqlmap.py -u 目标地址 --cookie=“” --dump-all
e.指定数据库查询
dvma下所有数据表数据
(1)指定数据库名称查找数据表:sqlmap.py -u 目标地址 --cookie=“” -D 数据库名称 --dump
指定dvwa数据库查找到两个表:users,guestbook,查询结果:
(2)指定数据表名称查找数据表的数据:sqlmap.py -u 目标地址 --cookie=“” -D 数据库名称 --dump -T 数据表名称
指定查找dvwa数据库users数据表的数据查询结果:
(3)指定查询users表的表结构:
查询结果:
(4)破解密码
查询到了users表的数据后发现密码都是md5加密存储的
可以网上直接搜索md5解密,将加密后的字符解密后得到的admin用户的密码为:password
另外,也可以用sqlmap自带的字典破解密码:
在获取users数据表的过程中会出现问题选择,询问是否破解密码
最后破解密码显示为:
括号内的为破解后的密码
4、sqlmap 注入post
1、post注入参数介绍
2、如何使用post请求注入
sqlmap.py -u "url" --cookie="" --data=“post源码” --batch --smart
注:--batch --smart启发式判断,batch自动执行yes,smart智能判断
post源码的获取:
(1)dvwa网站>xss stored>输入参数点击提交
(2)复制提交后的url
(3)谷歌浏览器>测试的网站右键>检查>Network,复制cookie以及Form Data
选择view source复制:
(4)运行post注入测试
(5)刷新dvwa的网站查看注入的结果
3、如何快速地批量注入测试
sqlmap.py -l txt文件名 --batch --smart
text文件:请求的地址,请求的头信息以及Form Data即post源码信息
(1)谷歌浏览器>测试的网站右键>检查>Network,Request Header>view source
(2)新建text文件,第一行填写请求的网站地址及端口号,第二行开始粘贴复制的Request Header,最后粘贴复制的Form Data的view source信息,如下所示:
(3)多个请求即批量注入,复制添加以上信息放在文件的后面,用分割符区分开保存即可
5、批量检测注入漏洞
sqlmap.py -g "url匹配" --batch --smart
转载自:点击打开链接
sql注入工具--Sqlmap相关推荐
- 详解强大的SQL注入工具——SQLMAP
本文转自:详解强大的SQL注入工具--SQLMAP 前言 Windows下的注入工具好的又贵,免费的啊D.明小子等又不好用,我们根本没必要花 时间去找什么破解的havij.pangolin什么的,特别 ...
- 自动化SQL注入工具-sqlmap
1.通过burpsuite.获取拦截到的请求,指定文件进行探测 python sqlmap.py -r target.txt --current-db 2.通过url地址进行探测 Python sql ...
- 视频教程-SQL注入与SQLmap工具-漏洞挖掘与利用
SQL注入与SQLmap工具 玄道,从混迹漏洞平台与SRC应急响应中心的白帽子到创业乙方的技术与运营 刘畅 ¥15.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 AP ...
- SQL 注入工具集合
众所周知,SQL注入攻击是最为常见的Web应用程序攻击技术.同时SQL注入攻击所带来的安全破坏也是不可弥补的.以下罗列的10款SQL注入工具可帮助管理员及时检测存在的漏洞. BSQL Hacker B ...
- 渗透测试-SQL注入之sqlmap的使用方法及实战案例
SQL注入之sqlmap的使用方法及实战案例 文章目录 SQL注入之sqlmap的使用方法及实战案例 前言 一.sqlmap的使用方法 查库,表,列,以及相关的字段的信息 万能密码汇总 判断是否为字符 ...
- mysql注入扫描网站漏洞工具_国产SQL注入漏洞测试工具 - 超级SQL注入工具(SSQLInjection)...
此工具为本人对C#.Socket及HTTP协议.SQL注入进行深入研究后,闲暇时间做的一款SQL注入工具.不说秒SQLMap,直接秒杀什么webcruiser.Safe3SI.pangolin.hav ...
- 自动化注入工具SQLmap入侵数据库的使用方法(注入攻击)
sqlmap简介 sqlmap支持五种不同的注入模式: 1.基于布尔的盲注,即可以根据返回页面判断条件真假的注入. 2.基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是 ...
- mysql sql注入工具_SQL注入工具实践
程序简介 超级SQL注入工具(SSQLInjection)是一款基于HTTP协议自组包的SQL注入工具,支持出现在HTTP协议任意位置的SQL注入,支持各种类型的SQL注入,支持HTTPS模式注入. ...
- mysql sql注入工具_基础篇——SQL注入(工具注入)
注入工具 上一篇介绍了SQL注入漏洞以及一些手工注入方法,本篇介绍一下注入工具 1.sqlmap sqlmap属于比较经典的一个注入工具,功能强大,还自带一些绕过参数 使用方法: sqlmap.py ...
- sql注入之——SQLMap常见语句
填坑~~ SQLMap常见语句 首先要明确 整个的单词 需要用两个横杠– 缩写的单词 需要一个横杠- 参考:https://www.freebuf.com/sectool/164608.html 一. ...
最新文章
- 恩智浦智能车大赛2020_2020年中国人工智能机器人大赛在宝鸡市会展中心举办
- 浏览器内核_测量时间:从Java到内核再到
- python class类_Python——入门级(class类)
- 关于大型网站技术演进的思考(一)--存储的瓶颈(上)
- HDU 3954 Level up(线段树)
- 当面试官问我————为什么String是final的?
- 使用vagrant因用户权限导致文件不可写问题的解决
- Ruby on Rails本地安装方法
- Node.js 的原型注入方法
- Rust : channel、多线程与 CTP相关机制的模拟
- 兄弟连新版PHP视频教程(共346讲)
- 数控机床的十大数控系统,学了这么多年终于全了!
- f分布表完整图a=0.01_图 python 实现
- “绿坝—花季护航”使用全攻略
- 2021五一杯数学建模C题思路
- 无网络状态下显卡驱动软件安装
- 计算机应用高级教程,大学计算机应用高级教程(第3版)简介,目录书摘
- 点亮一盏灯,温暖一个梦
- win10的键盘肆无忌惮的乱输入某个字母
- 【Oracle Hint】Oracle Hint学习笔记【一】