使用burpsuite进行sql注入

2019-02-21  本文已影响0人  1f28dd1475ee

此环境为DVWA中SQL lnjection,难易程度为Medium

首先在选择框中选择1提交,返回admin的数据

提交2,获得另一个数据

在提交的时间,url里没有任何变化,应该不是GET型,根据判断可能为Cookie型或者POST型,Cookie和POST都是数据包里面进行提交,所以使用burp这款工具查看它属于哪一种接受方式

首先设置浏览器的代理(这里为kali中的firefox)

将代理IP地址设置为127.0.0.1(本地地址),端口为8080(burp默认代理端口)

打卡burp

选择--Proxy--Intercept--Intercept is on打开代理

然后回到SQL Injection,提交1,以可看到为POST接收参数

然后右键,Send to Repeater 打开模拟提交去观察发送和返回包之间的变化

然后点击GO

提交1的时候

提交2的时候

可以看到这个Web页面是通过POST提交的,找到传输的地点以后,通过这个传输点把恶意的SQL语句带入查询看看

输入:1 and 1=1 //返回正常

输入:1 and 1=2 //返回错误

不需要加单引号进行闭合,说明这是一个数字型的SQL注入

然后接着判断列字段值的长度

输入:1 order by 2 //返回正常

输入:1 order by 3 //报错

说明只有2个长度

输入:1 union select 1,2 

可以看见1和2地方存在脆弱点

查看当前使用的数据库名称和当前用户名,在脆弱点1和2上输入database()和user()

可以看到用的数据库为dvwa,当前用户为root@localhost

查看dvwa数据库中有什么表: 1 union select 1,table_name from information_schema.tables where table_schema='dvwa'

可以看到这里的单引号呗转义了,将dvwa转换成16进制,代替dvwa

可以发现dvwa这个数据库中有guestbook和user两个表,经验告诉我,账号密码存放在users表中

查看users表中的列:1 union select 1,column_name from information_schema.columns where table_name=0x7573657273

可以看到users表中的列都被曝了出来,根据经验,user列中存放用户名,password列中存放密码

查看这两个列里面的数据:1 union select user,password from user

到此就获得了这个Web服务器数据库里所有的账号密码

密码都是md5加密后的,可以使用在线MD5解密工具进行解密

上一篇下一篇

猜你喜欢

热点阅读