标签:ecshop sql注入漏洞修复

公司部署了一个ecshop网站用于做网上商城使用,部署在阿里云服务器上,第二天收到阿里云控制台发来的告警信息,发现ecshop网站目录下文件sql注入漏洞以及程序漏洞

如下图:

 

与技术沟通未果的情况下,网上查了点资料,对其文件进行修复,如下修改:

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漏洞修复方法

复制代码

functionAPI_UserLogin($post)

{

/*添加 SQL注入过滤 */

if (get_magic_quotes_gpc())

{

$post[‘UserId‘] = $post[‘UserId‘]

}

else

{

$post[‘UserId‘] =addslashes($post[‘UserId‘]);

}

/* */

$post[‘username‘] = isset($post[‘UserId‘])? trim($post[‘UserId‘]) : ‘‘;

…….

4,\admin\edit_languages.php漏洞修复方法

// 修复前

$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 sql注入漏洞修复

get_affiliate_ck函数.

function get_affiliate_ck()226行

修复方案

对$_GET[‘auid’]强制转换

if (isset($_GET[‘auid‘]))

{

$sqladd = ‘ AND a.user_id=‘ . intval($_GET[‘auid‘]);

}

6,/admin/comment_manage.php注入漏洞修复  336行

文件在/admin/comment_manage.php后台sql注入漏洞。

/admin/comment_manage.php修复方法(大概在第336行)

$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.phpSQL注入漏洞 116行

防御方法

/includes/modules/payment/alipay.php

functionrespond()

{

if (!empty($_POST))

{

foreach($_POST as $key => $data)

{

$_GET[$key] = $data;

}

}

$payment = get_payment($_GET[‘code‘]);

$seller_email =rawurldecode($_GET[‘seller_email‘]);

$order_sn = str_replace($_GET[‘subject‘],‘‘, $_GET[‘out_trade_no‘]);

/* 对$order_sn进行有效过滤 */

$order_sn = trim(addslashes($order_sn));

/* */

..

8,/includes/lib_insert.phpsql注入漏洞修复

ecshop的/includes/lib_insert.php文件中,对输入参数未进行正确类型转义,导致整型注入的发生。

  1. 139c139,140

  2. +       $arr[‘num‘] = intval($arr[‘num‘]);

  3. +                       $arr[‘id‘] = intval($arr[‘id‘]);

  4. 267c268

  5. ---

  6. 270c271,272

  7. +       $arr[‘id‘] = intval($arr[‘id‘]);

  8. +                       $arr[‘type‘] = addslashes($arr[‘type‘]);

  9. 308c310

  10. ---

  11. +       $arr[‘id‘] = intval($arr[‘id‘]);

修改后更新阿里云控制台,提示已经修复,大功告成

本文出自 “云之上” 博客,请务必保留此出处http://weimouren.blog.51cto.com/7299347/1908368

关于ECSHOP中sql注入漏洞修复

标签:ecshop sql注入漏洞修复

关于ECSHOP中sql注入漏洞修复的更多相关文章

  1. 网站sql注入漏洞修复方案之metinfo 6.1.0系列

    近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码进行sql注入攻击,伪造恶意的sql非法语句,对网站的数 ...

  2. DT6.0关于SQL注入漏洞修复问题

    阿里云安全平台提示:Destoon SQL注入,关于: Destoon的/mobile/guestbook.php中$do->add($post);这行代码对参数$post未进行正确转义,导致黑 ...

  3. ecshop常见sql注入修复(转)

    ecshop系统部署在阿里云服务器上,阿里云提示Web-CMS漏洞: 修复方法如下: 0. /good.php 大概在第80行 $goods_id = $_REQUEST['id']; 修改为 $go ...

  4. ecshop SQL注入漏洞导致代码执行

    漏洞名称:ecshop SQL注入漏洞导致代码执行补丁编号:11208761补丁文件:/includes/libinsert.php补丁来源:云盾自研漏洞描述:ecshop的/includes/lib ...

  5. Drupal 7.31版本爆严重SQL注入漏洞

    今早有国外安全研究人员在Twitter上曝出了Drupal 7.31版本的最新SQL注入漏洞,并给出了利用测试的EXP代码. 在本地搭建Drupal7.31的环境,经过测试,发现该利用代码可成功执行并 ...

  6. Discuz 7.2 /faq.php SQL注入漏洞

    测试方法: 提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!   Discuz 7.2 /faq.php SQL注入漏洞   http://www.xxx.com/faq.php?a ...

  7. 【代码审计】大米CMS_V5.5.3 SQL注入漏洞分析

      0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...

  8. 【代码审计】XIAOCMS_后台database.php页面存在SQL注入漏洞

      0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...

  9. SQL注入漏洞总结

    目录: 一.SQL注入漏洞介绍 二.修复建议 三.通用姿势 四.具体实例 五.各种绕过 一.SQL注入漏洞介绍: SQL注入攻击包括通过输入数据从客户端插入或“注入”SQL查询到应用程序.一个成功的S ...

随机推荐

  1. Python 静态方法和类方法的区别

    python staticmethod and classmethod Though classmethod and staticmethod are quite similar, there’s a ...

  2. 乱写的一个SQL框架

    闲来没事,看了mybatis的实现形式,就心血来潮的自己弄了一个仿照mybatis的框架,性能肯定不好,而且有很多问题,但是是一次有益的尝试 1.基本配置文件 <!--加载数据源--> & ...

  3. 数论 最简分数 Farey序列求最简分数+POJ3374

    法雷数列 定义和定理 定义一: 最简分数(也称既约分数或不可约分数).若p,q的最大公约数是1,我们称分数p/q是最简分数. 定义二: 真分数,若p,q是正整数,0<p/q<1, 我们说p ...

  4. C++与UnrealScript脚本交互

    转自:http://m.blog.csdn.net/blog/qweewqpkn/39932499 一.c++调用uc脚本中的函数 举例: 1. 在脚本MenuManager.uc文件中实现函数: e ...

  5. KMP匹配

    字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD" ...

  6. Redux API之combineReducers

    combineReducers(reducers) 随着应用变得复杂,需要对 reducer 函数 进行拆分,拆分后的每一块独立负责管理 state 的一部分. combineReducers 辅助函 ...

  7. [poj3368]Frequent values(rmq)

    题意:给出n个数和Q个询问(l,r),对于每个询问求出(l,r)之间连续出现次数最多的次数. 解题关键:统计次数,转化为RMQ问题,运用st表求解,注意边界. 预处理复杂度:$O(n\log n)$ ...

  8. VR虚拟现实眼镜那些事

    今天是2014.3.20,笔者从oculus官网订了DK2(第二代开发版) 评测视频http://v.youku.com/v_show/id_XNjg3NTUzOTk2.html 想想从哪说起呢... ...

  9. boost编译配置及简单使用

    boost编译配置及简单使用 1.下载 http://www.boost.org/ 2.编译: A.解压 boost_1_55_0.zip 到boost路径 B.运行 bootstrap.bat. 会 ...

  10. NativeScript官方书籍:1.为什么选择nativescript

    1.为什么选择nativescript 本章介绍 什么是NativeScript nativescript对于移动开发世界意味着什么 NativeScript工作原理 在早期的移动应用程序(前iPho ...