### 简要描述:
过滤不严。
### 详细说明:
在appaction.class.php中
```
public function index() {
parent::tologin();
$appname=trim($this->_get('appname'));
$action=$this->_get('action');//直接调用方法
$out=urldecode($_GET['out']);
//是否开启应用
$app=M('Plugins')->where("directory='$appname' AND available=1")->find();
$this->assign('app',$app);
if (!$app) {
$this->display('apperror');
exit;
}
//是否添加
```
//获取内容
```
if (@file_exists(ET_ROOT .'/Apps/'.$appname.'/index.class.php')) {
include_once(ET_ROOT .'/Apps/'.$appname.'/index.class.php');
if (class_exists($appname)) {
if (!@file_exists(ET_ROOT.'/Apps/'.$appname.'/'.$out)) {
$out='';
}
if (!$out) {
$plugin=new $appname($this);
if ($action) {
echo $plugin->$action();
exit;
} else {
if (method_exists($appname,index)) {
$content=$plugin->index();
}
}
} else {
include_once(ET_ROOT .'/Apps/'.$appname.'/'.$out);//这里包含了 无语截断。
exit;
}
}
```
if (@file_exists(ET_ROOT .'/Apps/'.$appname.'/index.class.php'))
需要满足这个 让$appname 为baseexp
然后$out可控。则可以包含了。
### 漏洞证明:
[<img src="https://images.seebug.org/upload/201402/09120450ae42cdbece7eb83046ddf73528005efe.jpg" alt="I5EQQKXE[KCKQFDRZIESKS3.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201402/09120450ae42cdbece7eb83046ddf73528005efe.jpg)
有图有真相。
暂无评论