eyoucms 1.5.5任意命令执行漏洞
文章目录
一、漏洞简介
eyoucms1.5.5后台存在任意命令执行漏洞。
二、漏洞影响
eyoucms1.5.5
三、复现过程
漏洞位置
application\admin\logic\FilemanagerLogic.php editFile函数。
漏洞分析
当我们在模板管理功能的页面中传入php代码时会被解析。但是存在过滤,过滤如下:
$content=htmlspecialchars_decode($content,ENT_QUOTES);if(preg_match('#<([^?]*)\?php#i',$content)||(preg_match('#<\?#i',$content)&&preg_match('#\?>#i',$content))||preg_match('#\{eyou\:php([^\}]*)\}#i',$content)||preg_match('#\{php([^\}]*)\}#i',$content)){return"模板里不允许有php语法,为了安全考虑,请通过FTP工具进行编辑上传。";}
很明显主要的目的是不让传带php标签的内容,大体规则如下。
1、内容中不能有
<?php
2、内容中不能同时有
<?
和
?>
3、内容中不能有
{eyou:phpxxx
4、内容中不能有
{php xxx
我们可以发现第二条存在一个隐患,即我们可以传入
<?=要执行的代码;
来绕过,比如
<?=exec('whoami');
,但是我们没有闭合的话后面的html内容可能会被当成php代码,所以需要把我们要用的代码放到最后即。
漏洞利用
1、登录后台修改template/pc/index.htm模板
2、访问前台首页,成功得到回显信息。
版权归原作者 yu22x 所有, 如有侵权,请联系我们删除。