DedeCMSV53任意变量覆盖漏洞pc软件 文章资讯 手机软件

您当前的位置→图文中心新闻资讯安全播报DedeCMSV53任意变量覆盖漏洞

DedeCMSV53任意变量覆盖漏洞


2009/5/29  编辑:佚名 来源:本站整理  关键词:

DedeCMSV53 任意变量覆盖漏洞

 

DedeCMSV53发布出来了, 但是依旧没有将变量覆盖漏洞彻底修补。 这个漏洞和ryat那个很相似 :)
看核心文件程序include/common.inc.php中的代码


//检查和注册外部提交的变量
foreach($_REQUEST as $_k=>$_v)
{
    if( strlen($_k)>0 && eregi('^(_|cfg_|GLOBALS)',$_k) && !isset($_COOKIE[$_k]) )//程序员逻辑混乱了?
    {
        exit('Request var not allow!');
    }
}这个地方可以能够可以通过提交_COOKIE变量绕过cfg_等关键字的过滤
接着是注册变量的代码

foreach(Array('_GET','_POST','_COOKIE') as $_request)
{
    foreach($$_request as $_k => $_v) ${$_k} = _RunMagicQuotes($_v);
}之后初始化变量

//数据信息库配置文件程序
require_once(DEDEDATA.'/common.inc.php');

//系统system配置参数
require_once(DEDEDATA."/config.cache.inc.php");看似不能够利用了, 但是幸运的是就在文件程序最后有这样一段代码

//转换上传的文件程序相关的变量及安全处理、并引用前台通用的上传函数
if($_FILES)
{
    require_once(DEDEINC.'/uploadsafe.inc.php');
}再看uploadsafe.inc.php给我们我自己提供了什么

$keyarr = array('name','type','tmp_name','size');

foreach($_FILES as $_key=>$_value)
{
    foreach($keyarr as $k)
    {
        if(!isset($_FILES[$_key][$k]))
        {
            exit('Request Error!');
        }
    }
    $$_key = $_FILES[$_key]['tmp_name'] = str_replace("\\\\","\\",$_FILES[$_key]['tmp_name']);
             //提醒一定要注意这个地方, 可以通过common.inc.php的漏洞, 我们我自己是可以能够控制$_FILES[$_key]['tmp_name'] 的这里可以通过提交类似common.inc.php?_FILES[cfg_xxxx][tmp_name] =aaaaaa&……来覆盖cfg_xxxx
利用的时候提醒一定要注意给cookie赋值, 同一个时间要绕过uploadsafe.inc.php里面的一些判断 使用些版本的网站站长, 尽快修复漏洞……更多相关:www.arpun.com

相关文章
  • 雷蛇游戏本 THX 版 Blade Pro 评测VS灵刃游戏本
  • 三星I9100连上电脑的Kies,提示"Your device's current firmware version is not supp...
  • Android中Glide获取缓存大小并清除缓存图片
  • Android之Binder底层原理详解必读
  • Blender如何修改默认的窗口界面布局?
  • Blender怎么样?有哪些功能特色
  • InDesign软件中置入Word文档全部内容的详细步骤介绍
  • 《尼尔:机械纪元》CDE结局逻辑问题分析详解
  • 《Fate Grand Order》抽阿周那技巧方法攻略
  • 《Fate Grand Order》第五章上线时间预测分析
  • 发表评论
    阅读排行
    相关热门
    网站帮助 - 广告合作 - 下载声明 - 网站地图