mysql注入在线测试_记一次SQL注入实战

edf3398d412e7a740ecf7ac30fef4b1d.png

作者:左昱_leftshine

刚发现漏洞时,我就已经成功实现了注入,因为怕发到网上后被玩坏,一直没有发布。今天去看了看,原网页已经无法访问了,现在发出来应该就没有什么大问题了。

本文仅供学习交流,目的是为了构建更加安全的网络环境!

注入地址

某VIP会员专用系统

相关工具

注入工具:

超级SQL注入工具【SSQLInjection】   明小子

抓包工具:

Wireshark

注入过程

1.测试漏洞

1)测试 ’

首先打开网页,如下图:

6eb5d298c1c63dd68ff72871f5fc0b3d.png废话不多说,输入单引号” ‘ “进行测试:

8c637d58f0fb430a4fa66b60b016d946.png

看到测试结果报数据库错误,这就证明该系统存在SQL注入漏洞。而且这些粗心的程序猿连数据库表名都直接暴露出来了(tp_login),这不就等于直接写着:

2)测试 ‘or”=’

进一步测试,输入” ‘or”=’ “,点确定,直接就登录成功了,如下图

7549ae02099a47bbddb1520cc2857ad2.png

不用密码,直接进去了,看来漏洞真的存在!

3)测试 3389′ and 1=1 and ‘a’=’a

接下来测试下能不能使用注入语句,这里有两个选择:

继续使用or语句

找到真实密码

or语句前面已经有说明,这里就以知道密码的情况作说明(or语句原理相同)

网页上直接给出了获取密码的方式:

284e4b2c51fabaac1a01c18bf5f96d19.png

接下来就可以对数据库进行数据库名(前面提到,登录错误信息中已经包含了数据库名”tp_login”,真是省事啊)、表名、列名……的猜测了

手动猜测的具体方法可以参考这里:

sql注入实例分析()

当然手动猜测的量太大了,这么劳神费力的事当然要交给程序来完成,不过还是强烈建议看看这篇文章来了解下SQL注入的基本原理,不然后面操作一片茫然。

2.构造数据包

因为该系统不能简单通过网页URL来传递信息,所以我们需要构造数据包以POST方式发送数据包来注入。

1)手动构造:

根据POST数据包结构手动构造一个用于注入的数据包,具体怎么构造那就要去好好学习网络协议了……

2)抓包构造

这就简单多了,我们直接抓取正常发送的数据包,加以改造就可以用来注入了!

这里我们使用Wireshark来抓包,关于Wireshark抓取与分析HTTP包,参考这里:应用层协议FTP、DNS协议、HTTP协议分析()

使用Wireshark抓取到的POST数据包内容如下:

6b9381f1d792ef7e4c33c6df58664a89.png

修改成注入使用的POST包:

01d316de632e701dfab2888c32fa690e.png

这个数据包可以由软件”超级SQL注入工具”根据上面的包自动生成,具体操作请参考软件压缩包中相应的使用说明。

3.注入

ea33d9c7d933a61b0b15fdd7150bcb61.png其实我们只要将抓取到的数据包粘进程序中,然后点击”自动识别”,软件就会自动进行相应配置,然后看情况改改就可以了(一般情况下,自动配置就可以搞定了)。

配置完后,点击”发送数据”验证当前配置的数据包是否符合条件,若能够正确返回网页信息,则配置可用:

a4e6c61546ffc0f7ab5e8eba208dac00.png虽然图中显示”登录失败”,但证明可以正确返回网页信息,配置可用!

4.获取数据库信息

点击 获取数据

2891651997802141b7eff4dcde3d5ff7.png然后转到数据中心,依次”获取库”、”获取表”、”获取列”、”获取数据”:

e83f51e83fbc0235278ace2ed822e0b5.png可以看到,确实有名为”tp_login”的表和”3389″这个密码。

接下来就可以随心所欲的获取数据了。

获取到的数据

获取到的管理员账号信息:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值