旧版ECShop漏洞影响众多B2C商城 (修复方案如下)
2016-07-07 15:00 来源:www.chinab4c.com 作者:ecshop专家
据了解,ECShop是业界知名的B2C开源网店系统,适合企业及个人快速构建个性化网上商城。早在2010年4月,ECShop官方版本修复了“本地文件包含漏洞”,但由于大批网站欠缺安全意识,迟迟没有升级到V2.7.2及以上版本,因此才会给黑客长期攻击漏洞的机会,这部分网站比例高达40%。 经360安全工程师分析,旧版ECShop漏洞源于js/calendar/ calendar.php 文件,“由于$lang变量的检测不严。黑客可以绕过一些逻辑判断,将恶意字符串带入include_once包含语句,造成‘本地文件包含漏洞’利用。” 360安全工程师表示,黑客借该漏洞可能获取网站服务器内敏感信息,甚至执行任意代码,进而获取应用程序和服务器权限,对B2C电商网站用户数据和账户信息形成威胁。同时由于漏洞曝光日久,漏洞原理和攻击方法已广泛传开,这类“老漏洞”往往更容易吸引大批黑客入侵。 为保护电商网站业务和消费者数据安全,360建议使用旧版ECShop系统的电商网站立即升级至官方最新版本,或修改代码来封堵漏洞,方法如下: 打开 js/calendar/ calendar.php 文件,找到文件判断位置: if (!file_exists('../languages/' . $lang . '/calendar.php')) { $lang = 'zh_cn'; } 按照ECShop官方解决方案将if语句修改为: if (!file_exists('../languages/' . $lang . '/calendar.php') strrchr($lang,'.')) 或采取360解决方案修改代码如下: if (!file_exists('../languages/' . $lang . '/calendar.php') !in_array($lang,array("en_us","zh_cn","zh_tw"),true)) |
回答:
楼主提供的方法写法有问题!正确的应该是“if (!file_exists('../languages/' . $lang . '/calendar.php') || strrchr($lang,'.'))” |
这个官方早就补上了噢 |
有这个js/calendar/ calendar.php 文件么 |
好用的分享需要支持一下!辛苦楼主了 |
最近更新
常用插件
- ecshop二次开发详细页面生
插件介绍: ECSHOP系统,在很多时候,很多商品没有人购买,不但购买的人...
- ecshop二次商品订购人信息
ecshop二次商品订购人信息填写插件,有时候给朋友送花,或者是送礼品的...
- ecshop2.7.1打印发货单插件
ecshop2.7.1打印发货单插件介绍:ecshop2.7.1和以前的ecshop版本不一样,ecs...
- ecshop商品分类名称增加样
ecshop插件介绍:本插件可以方便在后台管理,为ecshop商品分类名称增加样...
- ecshop分类批量扩展插件
ecshop分类批量扩展插件,这个插件是ecshop插件里面比较核心的插件。我们...
ecshop热门问答
ecshop热门资料
ecshop了解情况
ecshopdirname
ecshop模特
ecshop空格
高效采集
ecshop开票
ecshopQQ主页天气代码
ecshop所有二次开发文档
ecshop1045
ecshop伪静态规则
ecshopDocuments
ecshop自定义模板
ecshop照片
ecshop管理工具
ecshop倒序
ecshop无法加入购物车
ecshop京东分类
ecshop高手请帮帮我!!!
ecshop引荐
ecshop丰速运
ecshop油画
ecshop商品编码
ecmall用户中心
nginx.conf
ecshop访问出错
ecshop格局
ecshop商品属性筛选
beegoapi使用
ecshop精典
ecshopconf