サイト内検索機能を悪用したスパム攻撃を受ける!
この度MASAa.netで、WordPrssの「サイト内検索機能」を悪用したスパム攻撃を受けてしまいました。
海外のアダルトサイトのようです。
WordPressの検索機能として、自動生成された検索結果ページがGoogle検索にインデックスされることを目的としたスパム攻撃です。
このWordPressの検索機能はサイト内に設置された「サイト内検索窓」を使用しなくても、サイトURL末尾に「/?s=」を付けることで検索結果のページが表示されます。
と言うことで、WordPressサイトのドメインを入手すれば簡単大量にスパム攻撃を行うことができるでしょう。
このスパム攻撃の目的は、SEO系の被リンク取得だと推測します。
WordPress標準の検索機能の無効化
先ずはWordPress標準の検索機能は無効化することにしました。
自分で考える余裕も無かったので、『Lancork-【WordPress】サイト内検索機能をプラグイン無しで無効化する方法』を参照させて頂きました。

「functions.php」を開き、WordPress標準の検索機能の無効化するための下記の内容を追記します。
//WordPress標準のサイト内検索機能を無効化
function fb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
// to error
if ( $error == true )
$query->is_404 = true;
}
}
add_action( 'parse_query', 'fb_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );
これでWordPress標準の検索機能は無効化することができ、サイトURL末尾に「/?s=」を付けて検索しても検索結果はコンテンツが見つからない「404エラー」を返すようになりました。
なお、忘れずにWordPress側の「ウィジェット 検索」は削除しておきましょう。
Googleカスタム検索を導入する
検索機能が無いと自分も不便なので、WordPress標準の検索機能の代わりにGoogleカスタム検索を導入しました。

検索ボックスのコードを取得して、後はWordPress側で「ウィジェット テキスト」に貼り付ければ完了です。
※検索ボックスのコードを「ウィジェット カスタム HTML」に貼り付けようとしたのですが、上手くいかなかったので「ウィジェット テキスト」のテキスト欄に貼り付けました。
Googleカスタム検索の青色が気になったので、「スタイルシート(style.css)」を開き、下記のカスタマイズ内容を追記して完了です。
/************************************
** ■Googleカスタム検索のカスタマイズ
************************************/
.gsc-search-button-v2 {
border: 2px solid #fe619a!important;
border-color: #fe619a!important;
background-color: #fe619a!important;
}
最後に
まさかこんな形でスパム攻撃をされるとは思っていなかったのでビックリです。
取りあえず対応することが出来て良かったのですが、スパム攻撃で生成された検索結果ページを削除するのが面倒で・・・。
と言うことで、サイト内検索機能を悪用したスパム攻撃される前に、早めの対策をお薦めします。
なお、今回WordPressテーマ CocoonのMASAa.netで被害を受けましたが、同様にWordPressテーマ THE THOR(ザ・トール)にも同じ内容で対応可能です。





コメント