您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop的sql注入漏洞修复方法实例
关戚栾2024-12-17 22:33:44ecshop商城教程已有人查阅
导读ecshop系统部署在阿里云服务器上,阿里云提示Web-CMS漏洞:大概在第53、71、105、123行,4个地方修复方式都一样
ecshop系统部署在阿里云服务器上,阿里云提示Web-CMS漏洞:
修复方法如下:
1. /admin/shopinfo.php
大概在第53、71、105、123行,4个地方修复方式都一样
大概在第81、105、133、155行,4个地方修复方式都一样
大概在第246行,API_UserLogin()函数中
大概在第120行
大概在第291行,get_affiliate_ck()函数中
大概在第336行,get_comment_list()函数中
大概在第183行,respond()函数中
对以下变量进行过滤
大概在第109行
修复方法如下:
1. /admin/shopinfo.php
大概在第53、71、105、123行,4个地方修复方式都一样
admin_priv('shopinfo_manage');
修改为
admin_priv('shopinfo_manage');
$_REQUEST['id'] = intval($_REQUEST['id']);
2. /admin/shophelp.php大概在第81、105、133、155行,4个地方修复方式都一样
admin_priv('shophelp_manage');
修改为
admin_priv('shophelp_manage');
$_POST['id'] = intval($_POST['id']);
3. /api/client/includes/lib_api.php大概在第246行,API_UserLogin()函数中
/* SQL注入过滤 */
if (get_magic_quotes_gpc()) {
$post['UserId']=$post['UserId']
} else {
$post['UserId']=addslashes($post['UserId']);
}
$post['username'] = isset($post['UserId']) ? trim($post['UserId']) : '';
$post['password'] = isset($post['Password']) ? strtolower(trim($post['Password'])) : '';
4. /admin/edit_languages.php大概在第120行
$dst_items[$i] = $_POST['item_id'][$i] .' = '. '"' .$_POST['item_content'][$i]. '";';
修改为
$dst_items[$i] = $_POST['item_id'][$i] .' = '. '\'' .$_POST['item_content'][$i]. '\';';
5. /admin/affiliate_ck.php大概在第291行,get_affiliate_ck()函数中
$sqladd = ' AND a.user_id=' . $_GET['auid'];
修改为
$sqladd = ' AND a.user_id=' . intval($_GET['auid']);
6. /admin/comment_manage.php大概在第336行,get_comment_list()函数中
$filter['sort_by'] = empty($_REQUEST['sort_by']) ? 'add_time' : trim($_REQUEST['sort_by']);
$filter['sort_order'] = empty($_REQUEST['sort_order']) ? 'DESC' : trim($_REQUEST['sort_order']);
修改为
$sort = array('comment_id','comment_rank','add_time','id_value','status');
$filter['sort_by'] = in_array($_REQUEST['sort_by'], $sort) ? trim($_REQUEST['sort_by']) : 'add_time';
$filter['sort_order'] = empty($_REQUEST['sort_order']) ? 'DESC' : 'ASC';
7. /includes/modules/payment/alipay.php 和 /app/includes/modules/payment/alipay.php大概在第183行,respond()函数中
$order_sn = trim($order_sn);
修改为
$order_sn = trim(addslashes($order_sn));
8. /includes/lib_insert.php对以下变量进行过滤
$arr['id'] = intval($arr['id']);
$arr['num'] = intval($arr['num']);
$arr['type'] = addslashes($arr['type']);
9. /admin/integrate.php大概在第109行
$code = empty($_GET['code']) ? '' : trim($_GET['code']);
修改为
$code = empty($_GET['code']) ? '' : trim(addslashes($_GET['code']));
本文标签:
很赞哦! ()
上一篇:ecshop操作数据库类文件介绍
相关文章
随机图文
-
ecshop商城背景怎么增加图片效果
增加背景图片的方法,图片自己做,喜欢什么自己做,更换掉就行把代码放在风格的page_header.lbi文件里顶部就行了 -
ecshop商品订单只要有一个包邮商品,整个商品订单全部包邮
ecshop商品订单只要有一个包邮商品,整个商品订单全部包邮1. includes/lib_order.php搜索“查看购物车中是否全为免运费商品,若是则 -
ecshop关于UTF8格式指上传格式不对处理方法
这篇文档为大家说明一下商品批量上传的方法,希望对大家有帮助。添加商品信息时有几个方面需要注意一下: 需要注意的地方(这块是借用大猪的说明): -
ecshop页面出现number_format()错误的原因及解决方法
首先需要说明的是:不是所有人的网站都会出现这个错误,只有符合一定环境和条件的网站才有可能出现这类错误提示,如下:
留言与评论 (共有 条评论) |