2014-03-15:细节已通知厂商并且等待厂商处理中
2014-03-15:厂商已经确认,细节仅向厂商公开
2014-03-18:细节向第三方安全合作伙伴开放
2014-03-25:细节向核心白帽子及相关领域专家公开
2014-04-04:细节向普通白帽子公开
2014-04-24:细节向实习白帽子公开
2014-06-13:细节向公众公开
过滤不严。
详细说明:在index.php中
include(SYS_ROOT.INC.'common.php');
$path=$_SERVER['PATH_INFO'].($_SERVER['QUERY_STRING']?'?'.str_replace('?','',$_SERVER['QUERY_STRING']):'');
if(substr($path, 0,1)=='/'){
$path=substr($path,1);
}
$ctrl=isset($_GET['action'])?$_GET['action']:'run';
if(isset($_GET['createprocess']))
{
Index::createhtml(isset($_GET['id'])?$_GET['id']:0,$_GET['cat'],$_GET['single']);
}else{
Index::$ctrl($path);
}
path是由query_string来的 所以不受gpc啦。
$ctrl=isset($_GET['action'])?$_GET['action']:'run';
if(isset($_GET['createprocess']))
{
Index::createhtml(isset($_GET['id'])?$_GET['id']:0,$_GET['cat'],$_GET['single']);
}else{
Index::$ctrl($path);
}
?>
看这里 我们可以自己来控制要进的函数
static public function getatlbyid($id){
if(!$id)return null;
self::$_db=new Dbclass(SYS_ROOT.DB_NAME);
if(MEMCACHE){
self::$_mem=new Memcached(MEMCACHE);
if(!$atl=self::$_mem->get($id.'_cms')){
$atl=self::$_db->get_one(TB."cms",'status=1 and id='.$id,"*",1);;
self::$_mem->set($id.'_cms',$atl);
}
}else{
$atl=self::$_db->get_one(TB."cms",'status=1 and id='.$id,"*",1);
}
return $atl;
}
那么就找这个函数来注入把。
有图有真相。
过滤。
版权声明:转载请注明来源 ′ 雨。@乌云 漏洞回应 厂商回应:危害等级:高
漏洞Rank:15
确认时间:2014-03-15 21:42
厂商回复:十分感谢您对taocms开源系统的关注:)
最新状态:暂无