このページの本文へ

Semalt.com によるリファラスパムを遮断する方法

2015年02月05日 15時33分更新

記事提供:SEMリサーチ

  • この記事をはてなブックマークに追加
本文印刷

Google Analytics などの Web解析ツールで参照元サイトを見ると、semalt.com というドメインからのアクセスが記録されていることがある。semalt.com はウクライナのスタートアップ企業で SEO分析ツールを開発・提供しているが、その実態はリファラスパム(referrer spam)を駆使するウェブスパマーだ。

Semalt によるリファラスパムは昨年夏ごろにも話題になったが、最近とある界隈で Semalt によるアクセスが急激に増加していることを確認したため、改めて解説する。


「完全自動SEO」をアピールする Semalt とその実態

Semalt は SEOツールを提供しており、トップページ画面で分析したい URL を入力すると5分程度でレポートが出来上がる。自分のWebサイトのランキング状況や競合サイトとの比較など様々なレポートを自動的に出力してくれる。彼らがビジネスにしたいのは有料サービスで、自動的な最適化施策により数か月で検索順位が大幅に上昇することを宣伝文句として掲げている。

しかし、その Semalt の実態はウェブスパムだ。彼らはリファラスパム(referrer spam)という手法を用いて人工的に外部リンクを生成し、ターゲットWebサイトの検索順位を上昇させようとしている。


Semalt によるリファラスパムの手法

Semalt は、一般公開されているアクセスログを悪用したウェブスパムを行う。クローラを世界中のあらゆる Webサイトに向けて走らせ、その時に生成した偽のリファラ情報(=順位を上げたいサイトのURL)を相手先サイトに渡すようにしている。すると、一般公開アクセスログの参照元サイト一覧にその偽のリファラの記録が残ることとなる。あとは Googlebot がその公開アクセスログを巡回してくれれば外部リンクの評価が加算されるといった計算だ。

つまり、一般公開アクセスログの参照元リスト一覧にターゲットサイトへのリンク(リファラ)が記録されているページを増やしていくことで、(たくさんリンクが張られた)あたかも人気のあるサイトであるように Google を騙すことで検索順位を上げようという魂胆だ。Semalt への参照元を残しているのは、有料の分析ツールを購入させたいという狙いがあるものと考えられる。

やっかいなことに、Semalt は一般的なクローラを利用していないことだ。 Semalt がスパムに利用しているクローラは、Soundfrost というユーティリティソフトに潜ませたマルウェアで乗っ取った、世界中のコンピュータで構成されるボットネットにより運用されている。セキュリティ企業の Incapsula によると、世界に散在する推定29万の異なるIPアドレスを持ち、一般的なスパム対策を掻い潜りつつスパムを試みるうえ、JavaScriptを実行可能でクッキーを保持するクローラを走らせているために Google Analytics などのレポート上は人間のトラフィックと判断されてしまう。さらにロボット排除プロトコル(REP)を完全に無視してアクセスするため、robots.txt や META Robots タグで遮断することができず、サーバの帯域を消費し負荷をかけている可能性もある。


Semalt のアクセスを .htaccess で遮断する

Semalt のリファラスパム対策は、サーバの .htaccess に次のようなコードを追加することで、アクセスを遮断することができる。


RewriteEngine on
RewriteCond %{HTTP_REFERER} semalt\.com [NC]
RewriteRule .* - [F]
# End semalt block

WordPress のフォーラムで紹介されていた記入例をもとに、次のように記述しても対応できる。こちらは semalt 以外に確認されているリファラスパムに利用されたドメインも含まれている。


SetEnvIfNoCase Referer fbdownloader.com spammer=yes
SetEnvIfNoCase Referer descargar-musicas-gratis.com spammer=yes
SetEnvIfNoCase Referer baixar-musicas-gratis.com spammer=yes
SetEnvIfNoCase Referer savetubevideo.com spammer=yes
SetEnvIfNoCase Referer srecorder.com spammer=yes
SetEnvIfNoCase Referer kambasoft.com spammer=yes
SetEnvIfNoCase Referer semalt.com spammer=yes

Order allow,deny
Allow from all
Deny from env=spammer

WordPress を利用しているウェブマスターは、Block Semalt というプラグインを導入することで対応できる。


cf.
Semalt Hijacks Hundreds of Thousands of Computers to Launch a Referrer Spam Campaign
http://www.incapsula.com/blog/semalt-botnet-spam.html

How to block semalt.com from visiting your WordPress website
https://wordpress.org/support/topic/how-to-block-semaltcom-from-visiting-your-wordpress-website

Block Semalt (WordPress プラグイン)
https://wordpress.org/plugins/block-semalt/

semalt-blocker
https://github.com/nabble/semalt-blocker

Web Professionalトップへ

WebProfessional 新着記事