首页建站经验 解决ecshop模板不支持php代码,修改ecshop过滤模板php代码!

解决ecshop模板不支持php代码,修改ecshop过滤模板php代码!

解决ecshop模板不支持php代码,修改ecshop过滤模板php代码!ECshop的模板是支持php代码的,主要是为了防范挂马,这个给一些不法分子创造了挂马的机会,这些不法分子挂马步骤很可能是:1…

解决ecshop模板不支持php代码,修改ecshop过滤模板php代码!

ECshop的模板是支持php代码的,主要是为了防范挂马,这个给一些不法分子创造了挂马的机会,这些不法分子挂马步骤很可能是:

1、通过ecshop的漏洞搞SQL注入,暴出管理员密码md5值,然后通过**md5得到管理密码。(注:防止暴出管理密码md5值的方法是关闭display_errors,并且修改cls_mysql.php里的ErrorMsg函数,注释掉所有错误输出代码或把错误写入文件)

2、进入管理后台,通过模板管理->库项目管理,编辑lbi文件,添加php代码,例如<?php @eval($_POST['lx']);?>

3、到这里,就完全控制这个站了,想挂什么马就挂什么马。

可见,ECshop的模板支持php代码这点是非常危险的,因此我们应该过滤模板里的所有php代码。

方法如下:

1、修改cls_templage.php文件,添加函数:

function delete_php_code($content)

{

if(!empty($content))

{

$pattern='/<?(.|rn|s)*?>/U';

return preg_replace($pattern,'',$content);

}

}

2、第165行$out = $this->_eval($this->fetch_str(file_get_contents($filename)));修改为:

$out = $this->_eval($this->fetch_str($this->delete_php_code(file_get_contents($filename))));

3、第260行$source = $this->fetch_str(file_get_contents($filename));修改为:

$source = $this->fetch_str($this->delete_php_code(file_get_contents($filename)));

这样,模板里的php代码就被过滤掉了。

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/16132.html
上一篇ecshop商品分类下的销售排行
下一篇 ecshop管理员密码修改邮件通知
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部