WordPressファーマ(Pharma)ハックとは?Google検索に表示されるバイアグラ系SEOスパムの原因・検出・削除方法を完全解説
WordPressは、ウェブサイトやECストアの構築に使われる最も人気のあるCMSの一つです。しかし、その人気ゆえに、ハッカーやSEOスパマーにとって格好の標的にもなっています。ハッカーはWordPressサイトに対して、さまざまな種類のマルウェア攻撃やハッキングを仕掛けます。その中でも特に頻繁に使われる手法が、本来上位表示されるべきではないコンテンツを検索結果の目立つ位置に押し込むというものです。このブラックハットSEO(ハッキング)手法は、「WordPress ファーマハック(Pharma Hack)」または「SEOスパム」と呼ばれています。
なぜハッカーはWordPressサイトをファーマハックで狙うのか?
答えはシンプルです。オンライン検索は貴重なアクセス流入の主要源であり、SEOハックは必要な努力をせずにそれを手に入れる最も簡単な手段だからです。ハッカーは権威性の高いサイトに侵入し、スパムリダイレクトを仕掛けることで、検索エンジン結果ページ(SERP)上の正当なポジションを確保します。近年確認された「ファーマハック(Pharma SEO Spam)」は、スパムリンクインジェクション攻撃に類似した手法であり、ハッカーが用いる最も一般的なブラックハットSEO技術の一つであることが判明しています。
ファーマハック(Pharma Hack)とは?
ファーマハックとは、WordPressサイトに感染するマルウェアの一種で、正規のサイトを、バイアグラやシアリスといった違法薬物の偽造品を販売する広告を掲載したスパムページへリダイレクトさせるものです。場合によっては、他の医薬品関連商品への感染もありますが、最も多いのはバイアグラとシアリスです。
最近確認されたWordPressファーマハックの中には、より巧妙化したバージョンもありました。この変種では、ハッカーがタイトル部分に被害サイト名を組み込み、Google検索結果を加工します。これにより、ユーザーは正規のサイトが実際に医薬品に関するものであると信じ込んでしまうのです。
自分のWordPressサイトがファーマハックに感染しているか調べる方法
SEOスパムは、サイト管理者から直接見えないため、発見が非常に困難です。スパマーは「クローキング」などの手法を使って、自分たちの仕業を隠そうとします。しかし、ファーマハックに感染しているかどうかを確認する方法はいくつか存在します。
方法1:Google検索でチェックする
「viagra wp-page」のようなキーワードでGoogle検索を行うと、影響を受けたサイトの一覧が表示されることがあります。ただし、Googleのウェブマスター向けポリシーにより、感染サイトは1ページ目には表示されません。3〜4ページ目までスクロールする必要があります。そこにあなたのサイトが表示されていれば、WordPressファーマハック、またはその他のブラックハットSEOスパムの被害者である可能性があります。
この一覧には感染サイトだけでなく、偽ページも含まれています。こうしたページをクリックすると、別のページへリダイレクトされたり、同じページ内に感染コンテンツが読み込まれたりします。
自サイトのどのページがバイアグラSEOスパムに感染しているかを特定するには、ドメイン名にキーワード「viagra」を組み合わせて検索します(例:viagra mydomain.com)。サイトのごく一部のページだけが感染している場合、管理者自身では気づかないことがあります。この検索により、隠れた感染ページを洗い出せます。もしバイアグラやシアリスを販売するサイトへリダイレクトされるなら、SEOスパムに感染している証拠です。リダイレクトではなく、同一ページ内にコンテンツが読み込まれるケースもあります。
方法2:Googlebotとして検索結果をチェックする
前述の通り、これらのスパムページは通常の検索では表示されませんが、Googlebotなど特定のユーザーエージェントには見えています。Googlebotの視点を再現するには、ブラウザのUser-Agent Switcher(拡張機能)を使用しましょう。ChromeやFirefox向けのものが入手可能です。
- お好みのUser-Agent Switcher拡張機能をインストールする
- 感染が疑われるWebページにアクセスする
- User-Agent文字列を以下のいずれかに変更する
a) Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)
b) Googlebot/2.1 (+https://www.google.com/bot.html) - ページを右クリックしてソースを表示する。これでリダイレクトの仕組みを確認できます。
注意:User-Agent Switcherを長時間有効にしていると、適切なセキュリティ対策を講じているサイトからブロックされたり、ブラックリストに登録されたりすることがあります。Googlebotに見えてしまうためです。
同様に、Drupal CMSやPHPサイトでのファーマハック除去については、Drupalファーマハックガイドをご参照ください。
WordPressファーマハックの構造
侵入のきっかけ
WordPressファーマハックを実行するため、攻撃者はまず既知の脆弱性またはゼロデイ脆弱性を悪用します。ここでは、最もよくある要因をいくつか紹介します。
- SQLインジェクションやXSS: 不適切なコーディング規約によって発生します。この2つは常に注意しておくべき項目です。
- 弱いアカウント・FTPパスワード: 2番目に大きな原因です。近年では、Linux GenのGitHubリポジトリも弱い認証情報が原因でハッキングされています。
- ディレクトリリスティングやエラー表示の有効化: 多くの場合これらが有効になっており、重要なファイルがネット上で誰でも閲覧できる状態になっています。
- 未修正・古いプラグインの使用: WordPressハッキングの主要因の一つです。常に最新の状態を保ちましょう。
持続的なアクセスの確保
WordPressファーマハックは、ルートディレクトリの内容を改変することで機能します。多くのスパム攻撃は/miscフォルダや/includesフォルダ経由で行われます。スパマーは以下のような既知の手法で持続的なアクセス権を確保します。
index.php、wp-page.php、nav.phpなどのファイルを改変するleftpanelsin.php、cache.phpなど、新しい不正ページを追加するxmlrpc.phpを編集し、管理者による検知を回避する- base64エンコードを使ってコードを難読化する
- スパムファイルを
/imagesフォルダ内に隠す。クローラーはここにファイルがあるとは想定しないため、検知を免れます - 拡張子の前にドット(.)を付加し、ファイル名を
.somefileのように変更して不可視化する - クローキング: ユーザーエージェントに基づいてクローラーを判別し、Googlebotに見せるコンテンツとMozillaなど一般ユーザーに見せるコンテンツを変える
- cronジョブを利用して再感染させる
被害の内容
- バイアグラやシアリスの広告を表示することで、苦労して築いてきたサイトの評判が失われる
- Googleからブラックリストに登録され、評判の回復が極めて困難になる
- ユーザーがサイトを信用しなくなる
- 検索順位が下落する
- あなたのサイトが、他サイトへのクリックを生み出す踏み台にされてしまう
自サイトにファーマスパムが表示されてお困りですか?専門家への相談をおすすめします。
WordPressファーマハックの修復方法
WordPressファーマハックは隠蔽されているため、感染ファイルを探して削除する作業は長く骨の折れるものになります。以下の手順で駆除を進めましょう。
1. バックアップを作成する
サイトの完全なバックアップ作成は推奨される基本習慣です。クリーンアップ作業中に問題が発生した場合に備えて役立ちます。コアファイル、データベース、プラグインおよびテーマファイルを必ず含めたバックアップ戦略を用意しておきましょう。
2. サイトのマルウェアスキャンを実行する
VirusTotalなどのオンラインマルウェアスキャンツールを使って感染を検出できます。より精度の高いスキャンにはAstraのMalware Scannerなども選択肢です。数分でサイト内の悪意あるファイルやコードをすべて検出し、マルウェア除去プロセスを加速させることができます。
3. 感染ファイルを削除する
FTP経由でホスティングサーバーに接続するか、ファイルマネージャーを使用します。次に/wp-content/フォルダへ移動し、プラグイン内に改ざんされたファイルがないか確認します。
ハッキングされたファイルには、プラグインファイルに擬態するための.class、.cache、.oldといった文字列が含まれていることがあります。また、ファイル名の先頭にドット(.)が付いていると、「隠しファイルを表示」オプションを選択しない限り見えません。該当するファイルはすべて削除してください。
4. tempディレクトリを空にする
/wp-content/temp/ディレクトリは感染の結果として生成されることがあります。このフォルダの中身を空にしましょう。ハッカーはtempフォルダとTMPファイルを利用して、マルウェア設置中の破損を防いでいます。
5. .htaccessファイルを確認する
.htaccessファイルはサーバーの設定ファイルであり、サーバーリクエストの処理方法を定義します。ハッカーはこのファイルの力を利用して、サイトへのバックドアを作ることもあります。以下のようなコードがないか注意深く確認してください。
RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
RewriteCond %{HTTP_USER_AGENT} (google|yahoo|msn|aol|bing) [OR] #Google、Yahoo、msn、aol、bingのクローラーを判定
RewriteCond %{HTTP_REFERER} (google|yahoo|msn|aol|bing)
RewriteRule ^(.*)$ somehackfile.php?$1 [L] #ハッキングファイルへリダイレクト
.htaccessファイルを再生成することも可能です。
- WordPressダッシュボードにログインする
- 「設定」→「パーマリンク設定」を開く
- 「変更を保存」をクリックする
6. データベースから悪意あるコードを除去する
データベースに変更を加える前に、必ずバックアップを作成することを強くおすすめします。まだ作成していない場合は、今すぐ実施してください。このステップは繊細な操作を伴います。
この工程では、プロのマルウェア除去サービスを利用するか、自身でデータベースをクリーンアップするかを選択できます。
- phpMyAdminにアクセスする
- 対象のデータベースを選択する
- wp_optionsテーブルを開く
- 検索タブを使って悪意あるエントリを検索する
検索すべき代表的な悪意あるエントリは以下の通りです。
- wp_check_hash
- class_generic_support
- widget_generic_support
- ftp_credentials
- fwp
注意:wp_optionsテーブルから重要な情報を誤って削除すると、サイトの不具合やクラッシュを招く可能性があります。十分慎重に作業してください。
注意:技術に自信がない場合は、外部の専門家に依頼する方が安全です。
7. 不審なコードを探して削除する
不審なコードは、WordPressサイトがハッキングされる主な原因の一つです。典型的なサンプルコードは以下のようなものです。
<ul id="menu">
<li><a href="attackerdomain.com">Something1</a></li>
この種のコードは、サイトを攻撃者が管理するドメインへリダイレクトさせます。そのため、見覚えのないドメインがないか必ず確認しましょう。これはWordPressファーマハックの主要な原因の一つです。
攻撃者は検知を避けるために、コードをbase64で隠すことがよくあります。例えばattackerdomain.comは「YXR0YWNrZXJkb21haW4uY29t」のように表記され、発見が非常に困難になります。ファイル内のbase64エンコードを検索するには、grepコマンドが便利です。
find . -name "*.php" -exec grep "base64"'{}'\; -print &> b64-detections.txt
このコマンドは、指定した.phpファイル群からbase64エンコードを検索し、結果をb64-detections.txtというファイルに保存します。その後、オンラインツールでデコードすれば、裏で何が行われていたのかを確認できます。
8. tempディレクトリを再度空にする
/wp-content/temp/にアクセスし、中身を空にします。ハッカーはtempフォルダとTMPファイルを利用して、マルウェア設置時の破損を防いでいるため、再確認が重要です。
9. コンテンツの差分をスキャンする
オンラインプラグインを使ってファイルの変更履歴をスキャンできます。その一例がExploit Scannerです。WordPress公式リポジトリにあるすべてのコアファイルとサードパーティファイルを走査し、不審なファイル名や異常なエントリを検出します。
ハッキングされたファイルを特定した後は、感染コードを削除するか、プラグインファイルを復元します。コードは徹底的にクリーンアップすることが重要です。悪意あるコードが残っていると、サイトが再感染する恐れがあります。
WordPressファーマハックを防ぐための予防策
- 強力な認証情報を使用する: サイトやデータベースのログインには強固なパスワードを設定しましょう。弱い認証情報は総当たり攻撃(Brute Force)で容易に突破され、サイト侵入につながります。
- WAF(Webアプリケーションファイアウォール)を導入する: ファーマハック感染への防御だけでなく、幅広いサイバー脅威からの保護にも役立ちます。
- フォルダのパーミッションを制限する: 不要なアクセスを防ぎましょう。
- 不審な・未使用のプラグインやテーマを無効化・削除する: 多くのプラグインやテーマは、内部の脆弱性によりハッカーの格好の侵入口となります。
- CMSコア・プラグイン・テーマを常に最新に保つ: 古いバージョンのまま放置すると、脆弱性を突かれてファーマハックの被害に遭う可能性が高まります。
- 定期的にセキュリティ監査を実施する: 自サイトのセキュリティ上の抜け穴や脆弱性を把握し、ハッカーに悪用される前に修正することが、ファーマハックなどの攻撃から身を守る最善の習慣です。
-
WordPress と Drupal によるスパム医薬品の結果。コメントを返す Google バイアグラ ハック?
WordPress と Drupal sont probablement les CMS les plus populaires utilisés pour créer des sites Web. Cependant、leur populateité en a fait des cibles juteuses pour lespires et les spammeurs SEO.海賊の本質的な継続性は、マニピュラーの指標であり、重要なものであり、重要な役割を果たしています。 「WordPress Pharma hack ou SEO Spam」のブラック ハット SEO est égale
-
Google Playストアのエラー491・495を解決する方法を徹底解説
このページにたどり着いたということは、Google Playストアでアプリをダウンロードする際に何らかのトラブルに遭遇している可能性が高いですね。Google Playストアには膨大な数のアプリが揃っていますが、お気に入りのアプリをインストールしようとした瞬間にエラーが発生してしまうことがあります。特にユーザーから報告の多いのが「エラー491」と「エラー495」です。本記事では、これらのエラーを素早く解決するための対処法をご紹介します。 Google Playストアのエラー491・495とは? 解決策に入る前に、まずはそれぞれのエラーの意味と発生原因を理解しておきましょう。 Google