
.htaccessの不正なリダイレクトを削除しても、数分後にはまた同じコードが書き込まれている—— この現象は、サーバー内にバックドアが存在していることを意味します。 .htaccessの修正だけでは解決しません。ファイルパーミッションの見直しも必要です。
.htaccessはApacheウェブサーバーの設定ファイルです。WordPressでは主にパーマリンク(URL構造)の制御に使われています。 正規のWordPressの.htaccessは以下のような短い内容です:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPressこれ以外の記述がある場合、プラグインが追加したものか、不正に挿入されたものかを確認する必要があります。
User-Agent(ブラウザの種類)やReferer(どこから来たか)を条件にして、 特定のユーザーだけを別のサイトにリダイレクトする。管理者には正常に見えるため発見が遅れる。
# 不正コードの例(検索エンジン経由のアクセスのみリダイレクト)
RewriteCond %{HTTP_REFERER} (google|yahoo|bing) [NC]
RewriteRule ^(.*)$ https://malicious-site.example/ [R=302,L]ルートの.htaccessだけでなく、wp-content/uploads/や各ディレクトリに 別の.htaccessが設置される。ルートだけ修正しても他のディレクトリの.htaccessが残る。
確認コマンド:find /path/to/wordpress -name ".htaccess" -type f
wp-content/uploads/やwp-includes/内に設置されたPHPファイルが、アクセスのたびに.htaccessを上書きする。cronジョブで定期実行されている場合もある。
WordPressの設定ファイル自体にマルウェアが仕込まれており、ページが読み込まれるたびに.htaccessを再生成する。
有効化されているテーマのfunctions.phpや、プラグインのメインファイルに.htaccessの書き換えコードが含まれている。
バックドアの特定と完全駆除が必要です。根本原因から対処します。
リバースハックはWordPress専門のセキュリティチームです。 マルウェア駆除から再発防止まで、ワンストップでサポートします。 まずはお気軽にご相談ください。
※ 相談は無料です。お見積もりだけでもお気軽にどうぞ。
この記事をシェア