SSTエンジニアブログ

SSTのエンジニアによるWebセキュリティの技術を中心としたエンジニアブログです。

EC-CUBE2系サイトはWeb改ざんに注意

こんにちは!脆弱性診断を絶賛修行中の西尾です!

今回は前回の記事に関連して、最近国内でWebスキミング被害(クレカ情報の漏えい)にあったECサイトについて、その傾向を調査したので、結果を書いていきます。

結論から述べますと、直近でWeb改ざんによってクレジットカード情報が流出した国内ECサイトは、その多くがEC-CUBEの2系を利用していたことが分かりました。ただ、Web改ざんの原因はEC-CUBEにあるというより、EC-CUBE利用者のセキュリティ意識に問題がありそうです。

⇓⇓前回の記事⇓⇓

techblog.securesky-tech.com

調査内容

  • 対象:Web改ざんによってクレジットカード情報が漏えいしたと思われる国内ECサイト
  • 公表期間:2019年4月~11月6日
  • 対象数:26サイト

今回は、各被害サイトが発表しているリリース内容に、「カード入力フォーム」や「ペイメントモジュール」が改ざんされたと記述しているサイトや、クレジットカード情報を非保持化しているにも関わらず漏えいしているサイト、またセキュリティコードまでが流出しているサイトを対象としています。

調査内容は、上記期間中に被害を公表した26サイトにおいて、使われているソフトウェアのバージョンなどを簡単に調べました。既にサイトが閉鎖やリニューアルされているものに関しては、魚拓サイトを利用して調べました。(ちなみに閉鎖・リニューアルされたものは16サイトありました)

※注意点
実際の分析では、正常にアクセスした際の通信内容やWebサイトのHTML/JavaScriptソースコードの内容からバージョン等の判断を行っています。攻撃に類する通信やサイトの運営を妨げる行為は不正アクセス禁止法をはじめ法令に違反することになりますので、絶対に行わないでください。

調査結果

今回の調査で最も驚いた点は、対象の26サイト中21サイトEC-CUBEを利用していたことです。割合で表すと約80%になり、かなり高い利用率と言えます。EC-CUBEとは、日本発のECサイト構築用CMSで、日本国内ではメジャーなソフトウェアです。ちなみに21サイトのうち2サイトは、WordPressも利用していました。


f:id:swime:20191112115523p:plain:w300
CMSの種別

さらにEC-CUBEの利用バージョンを調べてみると、一部推定も入りますが、21サイト中20サイトが2系を使っていました。(残り1サイトはバージョン不明)
詳しくは書きませんが、EC-CUBEはメジャーバージョン毎にWebサイトに特徴がいくつか現れるため、大まかなバージョンを推定することが可能です。2系の場合は、デフォルト設定のままだと細かいバージョンまで把握可能です。

詳細バージョンまで判明したものは4サイトあり、2.12.0~2.12.3, 2.13.5を利用していました。EC-CUBE公式が公開している脆弱性リストを確認してみると、当該バージョンに危険度の高い脆弱性が発見されていることが分かります。

www.ec-cube.net

また、現在もアクセス可能なECサイトの中で、通常アクセス時のレスポンスヘッダにPHPのバージョン情報が記載されているものを4サイト確認しました。いずれもバージョンは5.4系か5.6系で、PHPの公式サポートが終了しているバージョンを使用していることが分かりました。(ECサイトを改修する際には最新バージョンを使用して欲しいですね…。)

考察

今回の調査の感想として、被害サイトの多くはデフォルト設定のまま使用していたり、セキュリティ対策が甘そうだなと感じました。
今回は管理画面のチェックまでは行いませんでしたが、以下のブログ記事では、EC-CUBE利用サイトの管理画面のセキュリティ状況を簡易的に調査しています。その調査結果によると、管理画面のセキュリティ対策が甘いサイトは実際に多く存在しているそうです。

簡易調査で問題がなかったサイト:45%(743サイト中338サイト)
設定ミスがあると判断されるサイト:55%(743サイト中405サイト)

foxsecurity.hatenablog.com

また、2系の場合は、管理者のログインIDとパスワードは4文字以上であれば任意の値を設定可能なので、脆弱なパスワードを設定しているサイトもあるかもしれません。

f:id:swime:20191112160558p:plain
パスワード設定画面

さらにデフォルトではログイン画面にアカウントロック機能などは無いため、管理画面に対してセキュリティ対策を行っていない場合、ブルートフォース(総当たり)攻撃によって簡単に不正ログイン可能です。
あくまで個人的な予想ですが、管理画面に対するセキュリティ対策が不十分なために不正アクセスを受け、Web改ざんの被害を受けたECサイトは多いのではないでしょうか。

そのほかにも、古いバージョンのPHPやEC-CUBEを使用しているサイトも確認されたので、それらのソフトウェアに存在している脆弱性が悪用されて改ざんされた可能性もあります。

対策

基本的なセキュリティ対策としては、PHPやEC-CUBEなどのソフトウェアを最新の状態に保ち、公表された脆弱性は放置しないようにしてください。特にEC-CUBEに関しては、2系よりも4系の方がデフォルトのセキュリティ機能が向上しているので、2系をお使いの方は4系への移行を検討してみてはいかがでしょうか。

管理画面のセキュリティ対策としては、管理画面のURLをデフォルトから変更し、推測されにくい値に設定してください。できればIP制限までかけましょう。また、管理者のログインパスワードを強固な値に設定しておくのもお忘れなく。
これらの対策はEC-CUBE公式も注意喚起を行っている内容なので、EC-CUBE利用者は必ず下記の資料をチェックしておきましょう。


・【重要】サイト改ざんによるクレジットカード流出被害が増加しています(PDF)
https://www.ec-cube.net/user_data/news/201905/security_notice.pdf?argument=2qpV46CP&dmai=securitynotice1

www.ec-cube.net

以上は最低限のセキュリティ対策でしたが、+α の対策として、Web改ざんや不正アクセスを防ぐために、WAF(Webアプリケーションファイアウォール)を導入することをオススメします。さらに予算に余裕がある方は、改ざん検知システムを導入することで、もしWeb改ざんが行われたとしても改ざんの早期発見が可能となり、被害を最小限に抑えることが可能となります。また、脆弱性をなくすという観点では、脆弱性診断を実施することで、より強固なセキュリティ対策が可能になると思います。

ECサイト運営者は、顧客の個人情報やクレジットカード情報などの重要情報を扱っているということを忘れずに、セキュリティ意識を高く持っていただけると、一利用者としてもECサイトを安心して利用できます。