网站地图    收藏   

主页 > 后端 > 网站安全 >

anwsion缺陷大结合 - 网站安全 - 自学php

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

[导读] foreach处理不当爆路径,程序设置缺陷,绕过全局变量的包含----变量覆盖(1).foreach处理不当爆路径http://wenda.anwsion.com/search/ajax/search_result/缺陷:?php foreach ($this-search_result AS $key =......

foreach处理不当爆路径,程序设置缺陷,绕过全局变量的包含----变量覆盖

 
(1).foreach处理不当爆路径
 
http://wenda.anwsion.com/search/ajax/search_result/
 
 
 
 
缺陷:
<?php foreach ($this->search_result AS $key => $val)
 
 
代码没有检测$this->search_result是否为空,是否没数组....
 
\wenda\views\default\inbox\read_message.tpl.htm
 
<?php foreach($this->list AS $key => $val) {
 
 
缺陷一样.
 
 
 
2)程序设置缺陷.
 
http://wenda.anwsion.com/question/395
当你直接点击桌面zip下载需需要注册.
 
在源码中看见:
file/download/file_name-5qGM6Z2iLnppcA==__url-aHR0cDovL3dlbmRhLmFud3Npb24uY29tL3VwbG9hZHMvcXVlc3Rpb25zLzIwMTIwNjA3L2JkMGFhY2FhNjg2YzEyNDlkOTY1YzZjZWM5ZDEwY2Y1LnppcA==
 
 
其中:
aHR0cDovL3dlbmRhLmFud3Npb24uY29tL3VwbG9hZHMvcXVlc3Rpb25zLzIwMTIwNjA3L2JkMGFhY2FhNjg2YzEyNDlkOTY1YzZjZWM5ZDEwY2Y1LnppcA==
我们base64解码下.
 
最终连接;
http://wenda.anwsion.com/uploads/questions/20120607/bd0aacaa686c1249d965c6cec9d10cf5.zip
 
 
= =不用登陆能下载了,如果对方指定为VIP用户或者得注册(要邀请码)才能下载的话呢??
 
 
3)绕过全局变量的包含----变量覆盖
 
wenda\system\init.php 中
 
if (@ini_get('register_globals'))
{
if ($_REQUEST)
{
foreach ($_REQUEST AS $name => $value)
{
unset($$name);
}
}
}
 
 
此段代码程序是当全局开启全局时销毁变量,防止恶意代码赋值导致严重的后果.
 
但是程序员没了解,unset()默认只会销毁局部变量.
 
我们测试下:
 
<?php
 
 
 
 
 
if (@ini_get('register_globals'))
{
if ($_REQUEST)
{
foreach ($_REQUEST AS $name => $value)
{
unset($$name);
}
}
}
 
print $a."<br>";
print $_GET[b];
 
?>
 
 
 
http://www.2cto.com /wenda/system/unset.php?a=1&b=2
 
 
 
 
a变量被销毁,达到程序目的.
 
可是:....
 
http://127.0.0.1:8080/wenda/system/unset.php?GLOBALS[a]=1&b=2
 
 



 
 
 
GLOBALS[a]以覆盖全局变量时,则可以成功控制变量$a的值~~~~
 
还有思路突破: http://www.2cto.com/Article/201212/174596.html
 
为什么超全局变量$_REQUEST没有读取到$_COOKIE的参数呢?这个是php 5.3以后php.ini默认设置
request_order = "GP",所以你懂的!如果你修改request_order = "GPC",$_REQUEST应该就可以接受到参数了!
所以如果php是大于5.3的,变量覆盖漏洞应该可以再次利用!
 
 
修复方案:
检查是否数组,是否空. 逻辑严格点? 变量覆盖这个我想不出好点子,你写好了我再看看。。

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

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

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

添加评论