Magento・OpenCartを狙うクレジットカード乗っ取りマルウェアとは?症状・復旧・防止策を徹底解説
Magento・OpenCartで発生するクレジットカード情報窃取攻撃とは
クレジットカードマルウェア(クレジットカード乗っ取り)とは、MagentoやOpenCartで構築されたオンラインストアに悪意あるPHP/JavaScriptコードが注入され、ハッカーが決済時のカード情報を横取りする攻撃手法です。この比較的新しい不正手口は、発覚までに約6か月間も検知されなかった事例があり、Magentoの決済セキュリティを標的とした攻撃が数多く報告されています。
クレジットカードマルウェア感染の症状とは?
MagentoやOpenCartといったECプラットフォームの人気が高まるにつれ、マルウェア感染の被害も増加しています。ハッカーやサイバー犯罪者は、これらCMSのコアファイルを改ざんし、ストアを利用する顧客のクレジットカード情報を盗み出します。感染が疑われる場合の主な症状は以下の通りです。
- 顧客のクレジットカードが不正取引に使用されている
- ストアで商品を購入しようとするとエラーが発生する
- 決済プロセスが極端に遅く、途中で停止してしまう
- サイト上に見覚えのないポップアップやメッセージが表示される
- 管理画面へのログインに通常より時間がかかる
Magento/OpenCartストアのクレジットカード乗っ取りが心配ですか?チャットウィジェットからお気軽にご相談ください。今すぐサイトを修復する。
以下は、ハッカーによって注入された悪意あるコードのスクリーンショットです。
顧客が決済ページを開くと、このコードは入力されたすべてのデータをエンコードし、ハッカーのサーバーへ送信します。次のスクリーンショットは、カード情報をエンコードして送信する悪質なコードの一部です。
決済ゲートウェイ乗っ取りによる被害の内容
この攻撃は非常に標的型で、主にMagentoおよびOpenCartで運営されるECストアに影響を及ぼします。マルウェアは以下の機密情報を取得し、ハッカーが管理するサーバーへ送信します。
- クレジットカード情報(CC)
- カード番号
- セキュリティコード(CVV)
- 有効期限
- Magento管理者のログイン履歴がハッカーへ送信される
- ユーザーの個人情報(PII)
- アカウントのパスワード
- クライアントのIPアドレス
- 請求先氏名
- メールアドレス
- 住所
- 電話番号
- 生年月日
- Magento/OpenCartストアのサーバー情報
ECストアにとって、Webアプリケーションファイアウォール(WAF)は不可欠な存在です。サイトへのすべてのトラフィックを監視し、正当なリクエストのみをWebサーバーに通過させることができます。Astraで今すぐECサイトのセキュリティを強化しましょう。
Magento/OpenCartストアのクレジットカード乗っ取りが心配ですか?チャットウィジェットからお気軽にご相談ください。今すぐサイトを修復する。
Magento/OpenCartのクレジットカードマルウェア感染を修復する方法
修復作業はやや難易度が高い点に注意が必要です。というのも、多くのマルウェアスキャナーはこの種の脅威を見逃しがちだからです。理由は、こうした攻撃が高度に標的化されており、ストアごとに手口が異なるためです。
ステップ1:改ざんされた可能性のあるコアシステムファイルを確認する
過去に悪意あるコードが確認されたファイルのリストをまとめました。サーバーにログインし、以下のファイルが最近変更されていないかチェックしてください。
Magento 1.9.X
- app / code / core / Mage / XmlConnect / Block / Checkout / Payment / Method / Ccsave.php
- app / code / core / Mage / Client / controllers / AccountController.php
- app / code / core / Mage / Payment / Model / Method / Cc.php
- app / code / core / Mage / Checkout / Model / Type / Onepage.php
OpenCart 1.5 / 2.0
- catalog / controller / extension / payment / pp_payflow.php
- catalog / controller / extension / payment / pp_pro.php
- catalog / controller / extension / payment / authorizenet_aim.php
- catalog / controller / extension / payment / sagepay_us.php
- catalog / controller / extension / credit_card / sagepay_direct.php
下記は、PHPのcURLを使って顧客の機密情報を外部送信する悪質なコードの一例です。
ステップ2:最近変更されたファイルを確認する
SSHでWebサーバーに接続し、以下のコマンドを実行して最近更新されたファイルを特定します。
find /path-of-www -type f -printf '%TY-%Tm-%Td %TT %p\n' | sort -r
このコマンドは、最近変更されたファイルのパス一覧を返します。それぞれのファイルをテキストエディタで開き、不審な箇所がないか確認してください。
Astraをご利用のお客様には、悪意あるファイル変更を検知した際に通知メールをお送りしています。
ステップ3:Webシェルやバックドアファイルを探す
ハッカーはサーバーへの継続的なアクセスを確保するため、Webシェルやバックドアをアップロードし、後から新たなマルウェアファイルを送り込めるようにしている場合があります。ステップ2と同様にSSHでサーバーへ接続し、以下のコマンドを実行してください。
find /var/www -name "*.php" -exec grep -l "$_FILES\[" {} \;
検索結果として表示された各ファイルを開き、下図のようなコードが含まれていないか確認します。
クレジットカード乗っ取りを防ぎ、侵入経路を特定するための対策
- OpenCart/WordPressサイトを最新バージョンへ更新する:CMSコアに存在する既知の脆弱性を解消します。
- ファイルアップロードをマルウェアスキャンする:悪意あるシェルファイルがサーバーへアップロードされるのを防ぎます。(Astraダッシュボードからこのモジュールを有効化できます)
- 管理者アカウントのユーザー名とパスワードを変更する:マルウェア駆除後もハッカーがサイトへアクセスし続けることを防ぎます。
- データベースのパスワードを変更する:ハッカーがデータベースへ直接接続できないようにします。
- サーバーログ(アクセスログ・エラーログ)を調査する:不明なエラーや意味不明な文字列がログに残っている場合、ハッキングの発生源や発生時刻の手がかりになることがあります。
- Webサイトファイアウォールで将来の攻撃を防ぐ:Magentoマルウェア感染を防ぐもう一つの方法は、AstraのようなWebサイトファイアウォールの導入です。当社のセキュリティスイートは、悪意あるリクエストがサイトに到達する前にブロックすることで、サイトを自動的に保護し、ソフトウェアを仮想的にパッチ適用します。
-
ウェブサイトのバックドアを見つけて削除する方法|検出から再発防止まで徹底解説
実際のところ、バックドアは開発者がサイトへ正当にアクセスするための手段として利用されることもあります。しかし、作成したのが開発者であれハッカーであれ、バックドアは常にサイトのセキュリティにおける潜在的な脅威となるのです。 ウェブサイトのバックドアを検出するには? 一般に、ウェブサイトのバックドア検出は決して簡単な作業ではありません。バックドアは正常なファイルやデータベースの間に極めて巧妙に隠されているからです。ほとんどのバックドアは正規のコードと見分けがつかない形で記述されており、まさにその性質によって管理者の注意を巧みにかわすのです。 ここからさらに踏み込み、実際にどのような種類のバックド
-
クレジットカード詐欺とは?主な手口と被害を防ぐための対策を徹底解説
「クレジットカード情報は安全な保管場所(セキュアヴォールト)に保存し、詐欺師からカードを守りましょう。」 現金や小切手を持ち歩く心配がなくなるキャッシュレス決済は、私たちの生活に大きな利便性をもたらしています。しかし、クレジットカードやデビットカードをオンラインで利用する際のリスクについて、正しく理解している人はごくわずかです。その結果、人口の約4分の1がクレジットカード詐欺の被害に遭っているのが実情です。では、クレジットカード詐欺やなりすまし(ID窃取)から身を守るには、どうすればよいのでしょうか? 「カード決済を使うのをやめるべきか?」——答えは明確にノーです。適切な予防策を講じ、Adva