最近、WordPressのサイトを狙った「検索フォーム」を使用したスパム(spam)が流行っているようです。当サイトでも年明けくらいから目立って増加傾向にあります。
WordPressでは検索フォーム(当サイトの現時点でのデザインではページ右側の下部にある)に文字列を入力してWordPress管理内ページの検索を行うことができます。この検索結果のページのタイトルには検索用に入力した文字列がそのまま表示されます。
これを利用して、そのサイトに任意の文字列(単語など)を注入し、その検索結果ページを表示させるためのリンク元ページをどこかに設置して、そこを経由してGooglebotやbingbotなどの検索エンジンに読ませて、GoogleやBingの検索結果にその文字列(商品名なりサービス名なり特定のドメイン名なり)が表示されるようにしているのです:
この手法で実際に当サイトのGoogle検索結果に混入された例を以下に示します:
場合によっては広告の禁止ワードを入れて広告を停止させるような攻撃にも応用されそうな気がします。
そんなわけで、当サイトでは本日より検索結果ページのタイトルに検索ワードを表示しないようにテーマの書き換えを行いました。
変更点はheader.php
内で<title>
タグを出力する部分を変更し、is_search()
関数の呼び出し結果がTRUE
であればサーチ中なので固定文字列を出すようにした点です。もしかするとフックにもっと適切なものがあるかもしれませんが、とりあえずということで。もう少しあとでWordPress関数を研究してみます。
しかしスパマーも実にいろいろな手段を生み出すものですね 😐