ロシアからのリファラースパムがあまりにも多いのでまとめサイトを作りました。
すぐに解決したい人は、途中は飛ばして最後の「2015.03.09追記 スパム手口と抜本的な解決策」をご覧ください。
目次
リファラースパム(referer spam)とは?
リファラースパム(ログスパムまたはリファラーボムとも呼ばれる)とはスパムの一種です(検索エンジンをターゲットとしたスパムです)。
サイトの運営者が、Google Analyticsなどでアクセス先を分析している際に、スパムサイトが参照URLとして表示させるので、サイトの運営者をその参照先へと誘導するのが手口です。
図で説明すると以下の通りです。
スパム作成者がわざと参照元の痕跡を残している点がポイントです。
サイト運営者は、参照元をアクセスせずに、これらのサイトからのアクセスをブロックするようにしましょう。
過去のリファラースパム
過去、以下の記事を書きましたが、いずれもドメイン名は異なりますが同じIPアドレスのサイトです。
2014/12/18 リファラースパム(リファラスパム、referer spam) econom.co、darodar.com ブロック対策方法(ブロック出来ない?)
2014/12/19 ilovevitaly.com は、リファラースパム(referer spam)か
2015/1/3 Google Analyticsの表示からリファラースパム(referer spam) priceg.com を除外する
2015/1/8 リファラースパム(referer spam) blackhatworth.com をGoogle Analyticsから除外する
2015/1/16 リファラースパム(referer spam) hulfingtonpost.com をGoogle Analyticsから除外する
2015/1/20 スパム resellerclub scam をGoogle Analyticsから除去する
2015/2/4 リファラースパム(referer spam) bestwebsitesawards.comをGoogle Analyticsから除外する
2015/2/26 リファラースパム o-o-6-o-o.com
2015/3/4 リファラースパム(referer spam) humanorightswatch.org
econom.co、forum.topicXXX.darodar.com、ilovevitaly.com、priceg.com、blackhatworth.com、hulfingtonpost.com、resellerclub scam、bestwebsitesawards.com、o-o-6-o-o.com、humanorightswatch.orgなどのドメインのIPアドレスは、すべて 78.110.60.230 です。
このIPアドレスから、http://www.iplocation.net/ を使ってIPアドレスの場所を調べてみました。
以下の通り、このIPアドレスは、ロシアであることは間違いないようです。
リファラースパム対策
これらのリファラースパムは、実際には運営しているサイトを訪れておらず、Google Analyticsにのみ痕跡を残しているようです。
従って、ApacheやnginxなどのWEBサーバーの設定でスパムサイトからのドメイン/IPアドレスをブロックしても、ブロックされません。
現時点では面倒でもGoogle Analyticsでフィルターを作って対策する必要があるようです。
Google Analyticsには上位から、アカウント、プロパティ、ビュー(プロファイル)という階層構造があります。
アカウントは文字通り、Google Analyticsのアカウントです。自分のログイン名と考えてよいです。
プロパティは、トラッキングコードと紐づきます。Google Analyticsのデータはトラッキングコードごとに集計されます。
ビュー(プロファイル)は、フィルターを定義することにより、プロパティの中で必要なデータのみを集めることが可能となります。
ビュー(プロファイル)を使うことにより、無駄な集計を消すことが出来ます。
Google Analyticsにログインして、「アナリティクス設定」を開きます。
Google Analyticsでは、一度集計されているデータを後で変更することは出来ません。
従って、フィルタを全く行わないビュー、目的によりなんらかのフィルタを行うビュー、などを作っておくと分析に役に立ちます。
ビューを押して、リファラースパムを集計から消すビューを1つ追加しておきます。
その後、そのビューを選択してから、フィルタを選択します。
リファラースパム除外用のビューを作成します。
私の場合、以下のように設定しています。
「新しいフィルタ」を押してフィルタを作成します。
ドメインからの参照をフィルタする方法は以下の通りです。
フィルタの種類「カスタム」を選択して「除外」をチェックしてフィルタフィールド「参照」を選択してドメインを指定します。
以上で、リファラスパム除外用のフィルタを作ることが出来ました。
繰り返しますが、既存のGoogle Analyticsの集計データを後からビューを追加することでフィルタすることは出来ません。
フィルタビューはあくまで新たなデータについて有効になります。
他にも対策
アナリティクスの設定⇒ビュー設定⇒ボットのフィルタリング(既知のボットやスパイダーからのヒットをすべて除外します)にチェックを入れました。
残念ながら、これは、ロシア製のリファラースパムには有効ではないようです。
Googleへスパム報告
Googleにもスパム報告をしておいたほうがよいでしょう。
Googleウェブマスターツールでは、以下のURLからスパム報告を行うことが出来ます。
皆様もスパム報告にご協力ください。
みんなで報告してGoogleの賢いエンジニアに対策してもらいましょう。
豆知識:refererはスペルミスが仕様になった
このブログでは、refererと表記していますが、英単語としての正しい綴りはreferrerです。
ただ、HTTPプロトコルとしては、refererの方が正しいので、敢えてそちらを使っています。
詳しくは以下をご覧ください。
IT業界のスペルミス ミススペルが業界標準になる
まとめ
今のところ、Google AnalyticsでIPアドレスを使って排除することができないので、私の場合、面倒でもリファラースパムを見つける都度、ドメインをフィルタしています。
もう少し、まとめて削除を行う方法を見つけたいものです。
どなたかもっと賢い方法があれば押してください。
新しい本も出ていますね。
2015.03.09追記 スパム手口と抜本的な解決策
その後、外部の識者からご意見をいただきました。
スパムの手口
スパムの手口は以下の通り、Google Analyticsのトラッキングコードをコピーして行われていると思われます。
以下のサイトを参考にさせていただきました。
イマイチ、私には野鳥の例がわかりにくかったですが、要はGoogle Analyticsのコードは誰でも相手のものをコピーして詐称できるということです。
「サイト運営者のサイトが停止しているときにもスパムアクセスがあった」という報告もありましたが、この手口なら納得できます。
抜本的な解決策
スパムドメインが追加される都度、フィルターを作っていたら大変なので、よい方法はないかと思っていたら外部の方から対応方法を教えてもらいました。
以下のサイトを参考にしています。
http://cinci.jp/blog/20140918-filter-with-your-hostname
以下は、今年の1月1日から3月8日までの当ブログのアクセスについて、Google Analyticsにて、「ユーザー」 ⇒ 「ユーザー環境」 ⇒ 「ネットワーク」にて「ホスト名」を表示した画面です。
赤字で囲ったところが、リファラスパムです。
それ以外に表示されているサイトは、おそらく以下のようになると思われます。
apple.com ・・・ 不明ですが、おそらくスパム
webcache.googleusercontent.com ・・・ Googleのキャッシュ
translate.googleusercontent.com ・・・ Google翻訳
192.168.141.135、localhost ・・・ ローカルテスト時のログ
以上から、アクセスを自サイトのみとして、それ以外のアクセスをフィルターしたらよいようです。
具体的には、Google Analyticsの画面で、
「アナリティクス設定」 ⇒ 「ビュー」 ⇒ 「フィルター」にて以下のように
フィルタ名「自ホストのみ」として、フィルタの種類「定義済み」
「右のみを含む」「ホスト名へのトラフィック」「等しい」でホスト名として自身のホスト名を入力します。
他に「セグメント」を使う方法もあります。
ただ、これだとGoogle Analyticsのすべての画面にセグメントが表示されてしまうので、私には少し使いにくかったです。
以上ですが、お役に立ちましたら、シェアをお願いします。
コメント
こんにちは、以前、IPアドレスの除外で、「定義済み」を使ってみてはどうかとコメントしたものです。
ちなみにIPアドレス除外は効果なかったですね;;。
あれから、良い方法はないかと色々調べてみました。
すると以下の結論に至りました。
この種のリファラースパムの手口ってたぶんこれと同じか似たような手法ではないかと思っています。
http://nomadismit.com/2015/02/refspam-2/
これなら、サーバー側ではじく対策を行っても無意味なのが納得いきます。
で、ここで確認を一つ。どのホスト名(ドメイン?)に対してアクセスがあったのかを調べる方法があるみたいです。それが以下。
ユーザー > ユーザーの環境 > ネットワーク > プライマリディメンションでホスト名を選択
ここを見てみると、自分のホスト名が一番多いと思いますが、それ以外のホスト名も出てきます。そしてそれらのホスト名のセッション数を見てみればわかると思います。リファラースパムです。
で、対策は記事の後ろに紹介されていますが、自分のホスト名を含むURLにアクセスが有った場合のみ集計するというフィルタがあるみたいで、これが一番スマートかなぁと思いました。
http://cinci.jp/blog/20140918-filter-with-your-hostname
私のサイトの場合は、「www.」を含むアドレスと含まないアドレスの両方からアクセスが可能である為、フィルタを以下のように設定してみました。
フィルタの種類 > 定義済み > 右のみを含む > ホスト名へのトラフィック > 次を含む > example.com
(※「次を含む」にしてあるのは「www.」付きと無しの両方を含める為です。)
ちなみに「このフィルタを確認する」を押してみると、過去7日間にリファラースパムの集計データがある場合、これを除外できていることが確認できます。
これで、しばらく様子を見てみようと思います。
連投失礼します。
すでにお調べになっているかもしれませんが、
セグメントというモノを設定することで過去のデータからリファラースパムを除外して表示することも出来るようです。
http://ultimagazine.com/tips/analytics/164/
あと、ソースは知らないんですが、犯人を特定したという記事がありました。
http://seikou-udoku-shiawase.blogspot.jp/2014/12/blogger_22.html
なんでも108個のドメインを所有しているとか。
ホント勘弁して下さいw。
こんばんわ。
確かにIPアドレスの対策は効かなかったですね。
いただいた情報はすべて精読しました。
とても有益な情報で私の知らないものばかりでした。
Analyticsのコードはだれでも貼り付けることが出来るので確かにパクれば自身のサイトに結果が上がってきますね。これだとサーバー側では対策出来ませんね。
原因については理解できました。
対策についてですが、教えていただいた通りセグメントを自サイトのみにすれば、ほぼシャットアウト出来ました。
ただ、私のサイトの場合は、リファラスパム以外に、ほんの極わずかですが、webcache.googleusercontent.comとtranslate.googleusercontent.comも自サイト以外なので同時にシャットアウトされてしまいます。
セグメントとして「自サイトのみ」「自サイト以外」にしてみようかと思います。
ブログの方も土日に更新します。
[…] http://urashita.com/archives/3019 […]
[…] リファラースパム(referer spam)まとめ 手口と解決策判明 […]
[…] 謎のアクセスの対処法ですが、ネットで検索すれば色々な方法が出てきます。例えば、以下のサイトで「リファラースパムまとめ手口と解決策判明と」題して解説されています。ただ、完全には防ぎきれないようです。 […]