EC-CUBE 日本発のECオープンソース
EC-CUBEのダウンロード(FREE) EC-CUBEのデモサイト
Global Menu
  • 製品情報
    • EC-CUBEとは
    • 機能一覧
    • システム要件
    • 導入フローの紹介
    • よくあるご質問
  • 構築事例
    • 構築事例一覧(PC)
    • 構築事例一覧(携帯)
    • 構築事例インタビュー
    • 掲載記事紹介
    • 構築事例申請フォーム
  • 導入方法
    • EC-CUBEデモサイト
    • EC-CUBEダウンロード
    • 商用ライセンス
    • ドキュメント
    • ユーザー登録/メルマガ
    • イベント情報
  • カスタマイズ
    • すぐ使える決済モジュール
    • おすすめサービス
    • 制作会社を探す
    • レンタルサーバを探す
  • パートナー募集
    • コミッター(開発者)
    • インテグレートパートナー
    • アライアンスパートナー
    • ホスティングパートナー
初めての方へ
EC-CUBEとは
構築事例を見る
デモサイトを見る
レンタルサーバを探す
制作会社を探す
利用中の方へ
決済モジュールを探す
おすすめサービスを探す
商用ライセンス検討
構築事例を申請
イベント情報を見る
メルマガ登録(無料)
参加したい方へ
開発に参加
自社サービスと連携
制作パートナーに登録
ホスティング環境提供
EC-CUBEに寄付する
EC-CUBE公式ガイドブック
基本編
EC-CUBE公式ガイドブック
カスタマイズ編
EC-CUBEワンパッケージサービス「EC-CUBE One!」
ゆくゆくはEC-CUBEに移行可能な「EC-CUBE ASP」
ゆくゆくはEC-CUBEに移行可能な「EC-CUBE ASP」
PayPal×EC-CUBE 1,500円キャッシュバックキャンペーン
EC-CUBEダウンロード
SQLインジェクション脆弱性について(2008年10月29日)
 脆弱性の公表に関する重要なお願い 
ECサイト構築パッケージ「EC-CUBE」にSQLインジェクションの脆弱性が発見されました。
本脆弱性によりデータベースの顧客情報を取得することが可能となります。
早急に下記に示した対策をお取りください。

本脆弱性については、既にEC-CUBE開発チームとJPCERT/CC(有限責任中間法人 JPCERTコーディネーションセンター)が 連携して対応にあたっております。

追記
-------------------------------
2008年10月30日16時30分
2系のモバイルの修正方法を追加しました。
1系のモバイルには必要ありません。

-------------------------------
2008年10月31日15時30分
1系のモバイルの修正方法を追加しました。
---------------------------
ご協力者
この度の脆弱性の修正には上記の方のご協力を頂きました。
この場をお借りして深く御礼申し上げます。
脆弱性に関する情報
-------------------------------------------------------------------
■脆弱性が存在するEC-CUBEのバージョン
-------------------------------------------------------------------
EC-CUBEの全てのバージョン(コミュニティ版も含む)
1系,2系全て該当します。


-------------------------------------------------------------------
■修正方法について
-------------------------------------------------------------------

=========================================
変更前 1系
=========================================
html/shopping/deliv.php 114行目付近

if (sfIsInt($_POST['deliv_check'])) {
    // 登録済みの別のお届け先を受注一時テーブルに書き込む
    lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['deliv_check']);
    // 正常に登録されたことを記録しておく
    $objSiteSess->setRegistFlag();
    // お支払い方法選択ページへ移動
    header("Location: " . URL_SHOP_PAYMENT);
    exit;
}

=========================================
変更後 1系
=========================================
$objQuery = new SC_Query();
if (sfIsInt($_POST['deliv_check'])) {
    $deliv_count = $objQuery->count("dtb_other_deliv","customer_id=? and other_deliv_id = ?" ,array($objCustomer->getValue('customer_id'), $_POST['deliv_check']));
    if ($deliv_count != 1) {
                sfDispSiteError(CUSTOMER_ERROR);
            }
    // 登録済みの別のお届け先を受注一時テーブルに書き込む
    lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['deliv_check']);
    // 正常に登録されたことを記録しておく
    $objSiteSess->setRegistFlag();
    // お支払い方法選択ページへ移動
    header("Location: " . URL_SHOP_PAYMENT);
    exit;
    }
    
========================================= 変更前 1系モバイル ========================================= html/mobile/shopping/deliv.php 136行目付近 if (sfIsInt($_POST['other_deliv_id'])) { // 登録済みの別のお届け先を受注一時テーブルに書き込む lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); exit; } ========================================= 変更後 1系モバイル ========================================= $objQuery = new SC_Query(); if (sfIsInt($_POST['other_deliv_id'])) { $deliv_count = $objQuery->count("dtb_other_deliv","customer_id=? and other_deliv_id = ?" ,array($objCustomer->getValue('customer_id'), $_POST['other_deliv_id'])); if ($deliv_count != 1) { sfDispSiteError(CUSTOMER_ERROR); } // 登録済みの別のお届け先を受注一時テーブルに書き込む lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); exit; }
========================================= 変更前 2系 ========================================= data/class/pages/shopping/LC_Page_Shopping_Deliv.php 155行目付近 2系 変更前 if (SC_Utils_Ex::sfIsInt($_POST['deliv_check'])) { // 登録済みの別のお届け先を受注一時テーブルに書き込む $this->lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['deliv_check']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 $this->sendRedirect($this->getLocation(URL_SHOP_PAYMENT, array(), true)); exit; } ========================================= 変更後 2系 ========================================= $objQuery = new SC_Query(); if (SC_Utils_Ex::sfIsInt($_POST['deliv_check'])) { $deliv_count = $objQuery->count("dtb_other_deliv","customer_id=? and other_deliv_id = ?" ,array($objCustomer->getValue('customer_id'), $_POST['deliv_check'])); if ($deliv_count != 1) { SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR); } // 登録済みの別のお届け先を受注一時テーブルに書き込む $this->lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['deliv_check']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 $this->sendRedirect($this->getLocation(URL_SHOP_PAYMENT, array(), true)); exit; }
========================================= 変更前 2系モバイル ========================================= data/class/pages/shopping/LC_Page_Shopping_Deliv.php 343行目付近 if (SC_Utils_Ex::sfIsInt($_POST['other_deliv_id'])) { // 登録済みの別のお届け先を受注一時テーブルに書き込む $this->lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 $this->sendRedirect($this->getLocation(MOBILE_URL_SHOP_PAYMENT), true); exit; } ========================================= 変更後 2系モバイル ========================================= $objQuery = new SC_Query(); if (SC_Utils_Ex::sfIsInt($_POST['other_deliv_id'])) { $deliv_count = $objQuery->count("dtb_other_deliv","customer_id=? and other_deliv_id = ?" ,array($objCustomer->getValue('customer_id'),$_POST['other_deliv_id'])); if ($deliv_count != 1) { SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR); } // 登録済みの別のお届け先を受注一時テーブルに書き込む $this->lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']); // 正常に登録されたことを記録しておく $objSiteSess->setRegistFlag(); // お支払い方法選択ページへ移動 $this->sendRedirect($this->getLocation(MOBILE_URL_SHOP_PAYMENT), true); exit; }
EC-CUBEペイメント
人気ランキング
オーナーズストア
EC-CUBEペイメント決済モジュール
PayPal決済モジュール
EC-CUBEデザインテンプレート No.L0014
最新の発言
開発コミュニティ
最新のコミット
開発Trac
最新の更新
マニュアルサイト
個人情報保護方針 運営会社(株式会社ロックオン)
Copyright (c) LOCKON CO.,LTD. All Rights Reserved.