EC-CUBE3.0におけるクロスサイトスクリプティングの脆弱性(JVN#95292458)

更新履歴
2021/06/10 13:00
初版公開

クロスサイトスクリプティング脆弱性のお知らせ

EC-CUBE 3.0系に1件の脆弱性があることが判明いたしました。
(本脆弱性における被害報告は現時点でございません)

脆弱性そのものは、修正ファイルの反映によりすぐに解決するものです。 以下のいずれかの方法により、ご対応をお願いいたします。

皆様にはお手数おかけし誠に申し訳ございません。
できるだけ速やかにご対応をお願いいたします。

脆弱性の概要

クロスサイトスクリプティングの脆弱性


危険度:


不具合が存在するEC-CUBEのバージョン:
3.0.0 〜 3.0.18-p2

詳細

該当バージョンのEC-CUBEにはクロスサイトスクリプティングの脆弱性が存在します。 悪意のある第三者により用意された外部サイトへアクセスすることで、クロスサイトスクリプティングが発生する可能性があります。

修正方法1: 修正用の差分ファイルを利用する場合

開発環境がある場合は、まず開発環境でお試しください。
以下の手順に従って、修正ファイルの反映をお願いいたします。

  1. 修正ファイルのダウンロード

    ご利用中のEC-CUBEのバージョンに該当する修正ファイルをダウンロードしてください。
    ※ご利用中のEC-CUBEのバージョンはこちらの手順でご確認ください。

    修正ファイルダウンロード(3.0系) (SHA256:fa9be158e0682a6c5bc267da41c08a424807891b68a88a8250a6367e83b18507)

    ダウンロードし、解凍していただきますと、バージョンごとにフォルダが別れており、その中に以下の修正ファイルがあります。必ず該当するバージョンのファイルをご利用ください。

    • src/Eccube/Resource/template/admin/Setting/Shop/payment_edit.twig

    ※EC-CUBE 3.0.3以前のEC-CUBEには、本件以外にも複数の脆弱性がございます。
    ※EC-CUBEのバージョンを3.0.4以上にバージョンアップした上で、本件の修正を反映してください。

  2. EC-CUBEファイルのバックアップ

    あらかじめEC-CUBEファイル全体のバックアップを行ってください。

  3. 修正ファイルの反映

    以下のファイルを上書き更新してください。

    上書きするファイル

    • src/Eccube/Resource/template/admin/Setting/Shop/payment_edit.twig

    下記にファイルが存在する場合は同様に上書きをお願いします。

    • app/template/admin/Setting/Shop/payment_edit.twig
    ※EC-CUBE本体のカスタマイズをしている場合、修正箇所の差分をご確認のうえ反映をお願いします。
    ※開発環境がある場合は、開発環境での反映・動作確認を行った後に、本番環境への反映をおすすめします。

  4. キャッシュの削除

    EC-CUBE のキャッシュの削除が必要です。
    EC-CUBE の管理画面にログインいただき、コンテンツ管理 -> キャッシュ管理 のページからキャッシュの削除をお願いいたします。

  5. 動作確認

    管理画面にログインし、基本操作が正常に行えることをご確認ください。

修正方法2: 修正差分を確認して適宜反映する場合

EC-CUBE本体のソースコードをカスタマイズされている方向けです。
下記のコード差分情報を参照して頂き、必要な箇所に修正を反映してください。

  1. 修正差分の反映
    対象ファイル
    src/Eccube/Resource/template/admin/Setting/Shop/payment_edit.twig

    72行目
    変更前
    var $img = $(proto_img.replace(/__path__/g, path));
    
    変更後
    var $img = $(proto_img);
    $('img', $img).attr('src', path);
    
    86行目
    変更前
    var $img = $(proto_img.replace(/__path__/g, path));
    
    変更後
    var $img = $(proto_img);
    $('img', $img).attr('src', path);
    
  2. キャッシュの削除

    EC-CUBE のキャッシュの削除が必要です。

    EC-CUBE の管理画面にログインいただき、コンテンツ管理 -> キャッシュ管理 のページからキャッシュの削除をお願いいたします。

問い合わせ先

本脆弱性に関するお問合せ:

EC-CUBE 運営チーム
MAIL: [email protected]

謝辞

本脆弱性は、株式会社STNet森山響 様よりご報告いただきました。
この場をお借りして、厚く御礼申し上げます。