- A+
服务器上经常发现一句话webshell,删不完的**~~
管理员账号也经常被匿名IP登录。
目前ecshop漏洞大面积爆发,包括最新版的ecshop 3.0,ecshop 4.0,ecshop2.7.3全系列
版本都存在着高危网站漏洞,导致网站被黑,被篡改,被挂马,许多商城系统深受其漏洞的攻
击,给商城的运营者以及网站运营者带来很大的经济损失,甚至有些ecshop还被跳转到了一些
恶意网站上去。那么ecshop漏洞如何修复呢?
[高危]ecshop 支付宝插件sql注入漏洞
[高危]ecshop手机模块反射型XSS跨站
[严重]Ecshop会员中心XSS漏洞
[警告]PhpMyAdmin error.php XSS漏洞
[警告]任意网址跳转漏洞
[轻微]发现FCKeditor编辑器
[轻微]发现服务器启用了TRACE Method
早在4月份,现在看到的最晚的洞也拿到手上了,给自己开发的平台都已做过修复,阿里云为了推广WAF真是无下限啊,大面积爆出了部分洞口,现在360°网站管家 把部分修复方案贡献出来,大家抓紧补上吧,如需协助,可联系我们付费服务。
1、ecshop的/includes/lib_insert.php文件中,对输入参数未进行正确类型转义,导致整型注入的发生。
修复方法:给insert_ads函数内加入下面代码
$arr['num'] = intval($arr['num']);
$arr['id'] = intval($arr['id']);
$arr['type'] = addslashes($arr['type']);
2、ECShop存在一个盲注漏洞,问题存在于/api/client/api.php文件中,提交特制的恶意POST请求可进行SQL注入攻击,可获得敏感信息或操作数据库。
修复方法:给API_UserLogin函数加入下面代码
if (get_magic_quotes_gpc())
{ $post['UserId'] = $post['UserId'] } else { $post['UserId'] = addslashes($post['UserId']); }
3、ecshop的后台编辑文件/admin/article.php等中,对输入参数$_POST[‘id’]未进行正确类型转义,导致整型注入的发生。
修复方法:分别给其中的if ($_REQUEST['act'] == 'update')部分加入下面代码
$_POST['id'] = intval($_POST['id']);
4、ecshop没有对会员注册处/admin/integrate.php的username过滤,保存重的用户信息时,可以直接写入shell。
修复方法:将$code = empty($_GET['code']) ? '' : trim($_GET['code']);替换为下面代码
$code = empty($_GET['code']) ? '' : trim(addslashes($_GET['code']));
5. ecshop文件/admin/affiliate_ck.php中,对输入参数auid未进行正确类型转义,导致整型注入的发生。
修复方法给其公共部分加入下面代码
$_GET['auid'] = intval($_GET['auid']);
6、ecshop的/admin/comment_manage.php中,对输入参数sort_by、sort_order未进行严格过滤,导致SQL注入。
修复方法:将其get_comment_list函数内的$filter['sort_by']、$filter['sort_order']修改为下面代码
$filter['sort_by'] = empty($_REQUEST['sort_by']) ? 'add_time' : trim(htmlspecialchars($_REQUEST['sort_by']));
$filter['sort_order'] = empty($_REQUEST['sort_order']) ? 'DESC' : trim(htmlspecialchars($_REQUEST['sort_order']));
7、ECSHOP支付插件存在SQL注入漏洞,此漏洞存在于/includes/modules/payment/alipay.php文件中,该文件是ECshop的支付宝插件。由于ECShop使用了str_replace函数做字符串替换,黑客可绕过单引号限制构造SQL注入语句。只要开启支付宝支付插件就能利用该漏洞获取网站数据,且不需要注册登入。
修复方法:将$order_sn = trim($order_sn);替换为下面代码
$order_sn = trim(addslashes($order_sn));
8、漏洞成因在于user.php文件会直接带入SQL语句操作数据库的用户可控变量。由于ECShopGBK版本采用GBK编码(宽字符编码),攻击者可通过传入半个字符的方式绕过对单引号的转义,故导致SQL注入漏洞。
修复方法:给$username = json_str_iconv($username);下方加入下面代码
$username = str_replace('/', '', stripslashes($username));
- 微信 wzgj360
- 联系免费答疑
- QQ 613049615
- 联系免费答疑