Ad Invalid Click Protector でファイルが改ざんされたときの修復方法

アドセンス狩り対策の 1 つとして紹介されることの多い、WordPress プラグイン「Ad Invalid Click Protector」に脆弱性が発見されました(2024 年 6 月)。

インストールしているだけで次の症状が発生する可能性があります。

  • 管理者権限のユーザーが勝手に追加され、そのパスワードが外部に送信される
  • functions という文字列が含まれたテーマファイルが不正に改ざんされる

プラグインをご利用されている場合は、今すぐチェックと修復をおすすめします。

改ざんチェック・修復手順

Ad Invalid Click Protector によるユーザー不正追加、またはファイル改ざんが行われた場合、管理画面に「This is a message from the WordPress.org Plugin Review Team.」というメッセージが表示されます。

WordPress.org レビューチームからのメッセージ

This is a message from the WordPress.org Plugin Review Team.

The community has reported that the “Ad Invalid Click Protector (AICP)” plugin has been compromised. We have investigated and can confirm that this plugin, in a recent update (version 1.2.9), created users with administrative privileges and sent their passwords to a third party.

Since this could be a serious security issue, we took over this plugin, removed the code that performs such actions and automatically reset passwords for users created on this site by that code.

As the users created in this process were found on this site, we are showing you this message, please be aware that this site may have been compromised.

It may also have added an obfuscated script to the functions.php file of your themes with the function name “add_footer_script”. This has not been removed automatically and will require manual removal.

We would like to thank to the community for for their quick response in reporting this issue.

To remove this message, you can remove the users with the login names xxx .

※ xxx はランダムなユーザー名

以下はメッセージを要約したものです。

  • Ad Invalid Click Protector に脆弱性が見つかったので修正しました。
  • あなたのサイトにユーザーが不正に追加されましたが、ログインできないようパスワードはリセットしました。
  • ユーザーを削除するとこのメッセージが消えます。
  • テーマファイルが書き換えられている可能性があり、手動で削除する必要があります。

放置していると危険なため、すぐにユーザーとテーマファイルをチェックしましょう。

01. ユーザーが不正に追加されていないかチェック

WordPress 管理画面の左メニューから[ユーザー一覧]に入ります。

WordPress ユーザー一覧

ユーザー一覧画面に「This is a message from the WordPress.org Plugin Review Team.」が表示されていたら、不正なユーザーが追加されています。

メッセージ内に記載されているユーザーをすぐ削除してください。

不正なユーザーが追加されている例
※ ユーザー名はランダムに付けられるようです

ユーザーを削除すると、メッセージも消えます。

ユーザーは複数名追加されているケースもあるので、複数人で運営している場合は正規ユーザーを削除しないようご注意ください。

02. テーマファイルが書き換えられていないかチェック

ファイル名に「functions」が含まれているテーマファイルが改ざんされている場合もあります。

どのファイルが改ざんされたかまではメッセージで確認できないので、管理者自身で処理しなければなりません。

ご利用中のテーマで functions.php ほか、同名の文字列を含むファイルを検索してください。2024 年 6 月 28 日あたりに更新されていれば、書き換えられている可能性大です。

改ざんされたfunctions.php

対応が難しい場合は、以下のマルウェアスキャンプラグインでスキャンするのがおすすめです。

【無料】ワードプレス:マルウェアスキャン&セキュリティープラグイン [マルウェア・ウィルス検出と駆除]

マルウェアのパターンと一致しました」と表示された場合、高確率でファイルが改ざんされています。

ワードプレスドクター スキャン結果

以下の対応を行いましょう。

  • 利用していないテーマはすべて削除する
  • 有効化しているテーマは、該当するファイルを修復する
WordPress 使用していないテーマを削除

functions.php 修復方法

不正に改ざんされるのは、以下のように「functions」がファイル名に含まれているファイルです。

  • functions.php
  • xxx-functions.php
  • functions-xxx.php

サイトの状況に応じて修復しましょう。

FTP 操作できる場合

FTP で操作する場合は、改ざんされたファイルを PC にダウンロードします。

FTPでfunctions.phpをダウンロード

ダウンロードしたファイルをテキストエディタで開き、add_footer_script という文字列を検索(Word などの文書作成ソフトでは編集できません)。

不正に追加されるコードは、以下のパターンになっています。

if (!function_exists('add_footer_script')) {
function add_footer_script() {
	update_option('my_admin_init_function_run', 'yes');
	echo '<script>eval("xxx");</script>';
}
$has_run = get_option('my_admin_init_function_run');
if ($has_run !== 'yes') {
	add_action('wp_footer', 'add_footer_script');
}
}

実際のコードは 4 行目の「xxx」がかなり長い文字列になっており、見つけやすいと思います。

実際に改ざんされていたfunctions.php
実際に改ざんされていたファイル例

上記のコードを丸ごと削除してください。

ファイルの先頭に仕込まれているパターンもあれば、コードの途中に無理やり挿入されているパターンもありました。また、同じコードが複数追加されているケースも確認しています。

WordPress 管理画面からも編集できますが、必要なコードまで削除してしまうなど他の不具合が起きやすくなります。必ずファイルをダウンロードして編集しましょう。

ファイルを保存後、FTP で再アップロード(上書き)して完了です。

手元に最新版のテーマファイルがある場合

手元に最新版のテーマファイルがある or 最新版をダウンロードできるなら、テーマをアップロードし直す方法でも大丈夫です。

定期的にバックアップをとっている場合は、バックアップデータにテーマファイルが含まれていると思います。そちらもご確認ください。

WordPress 管理画面[テーマ]-[新しいテーマを追加]と進み、テーマ本体(ZIP ファイル)を選択してアップロード・インストールします。

WordPressテーマアップロード画面

「目的のフォルダーはすでに存在しています」と表示されるのが正常な状態です。

「アップロードしたもので現在のものを置き換える」をクリックし、再インストールしましょう。

アップロードしたもので現在のものを置き換える

カスタマイザーなどの設定はそのまま残りますが、テーマファイルを直接編集してカスタマイズしている場合は消えてしまいます。

何らかのカスタマイズをしている場合は、FTP で該当するファイルのみ上書きしましょう。

念のためもう一度マルウェアスキャンを実行し、修復できているか確認して完了です。

このサイトにマルウェアは見つかりませんでした

修復後の対応

Ad Invalid Click Protector を削除する

プラグイン「Ad Invalid Click Protector」の脆弱性は最新版で修正されていますが、実のところアドセンス狩り対策としてはほとんど効果がないため、削除してしまったほうがよいと思います。

効果がない理由は以下の記事で解説していますので、合わせてご覧ください。

無効なトラフィックにより AdSense 広告配信が制限されたときの対処法

なお、「Ad Invalid Click Protector」は WordPress 公式ディレクトリでダウンロード停止中となっています。古いバージョンを探してインストールするのは危険なので絶対にやめましょう。

パスワードを変更する

あなたのパスワードは漏洩していないかもしれませんが、念のためパスワードの変更をおすすめします。

もし突破されやすいパスワードを使っていたなら、この機会に強固なものに変更しておきましょう。小文字・大文字・数字・記号を含めた 10 文字以上のパスワードがおすすめです。

その他セキュリティ面の強化策は以下の記事で解説しています。

WordPress のセキュリティを強化する方法 10 選

修復が難しい場合は代行いたします

もしご自身での修復が難しい場合、また修復後のチェックが必要な場合、ココナラにて代行依頼を承っています。

WordPress エラー・不具合修正代行サービス(ココナラ)

サイト数が 10 以下であれば基本料の 3,000 円で承ります。即日対応しておりますので、お気軽にご相談くださいませ。

Q & A

Q

Ad Invalid Click Protector をインストールしたままでも大丈夫?

A

インストールしたままでも当面は問題ありませんが、今後更新されていくかは不明です。

もし「なんとなく」で導入したのであれば削除をおすすめします。

Q

不正なユーザー・ファイル改ざんを放置するとどうなりますか?

A

不正に追加されたユーザーのパスワードは変更されていますが、残しておくのは危険なのですぐに削除したほうがよいです。

改ざんされたファイルに仕込まれているコードは、外部から何らかのプログラムを実行するものと思われます。放置しておくと第三者に悪用されて、さらに悪化する可能性があります。

同じサーバー内で運用している他のサイトも改ざんされるおそれがあり、サイトにアクセスした方にも何らかの影響を及ぼすかもしれません。

Q

マルウェアスキャンを実行すると、テーマ以外も書き換えられていました

A

Ad Invalid Click Protector とは関係なく、以前から別経路で侵入されてファイルが改ざんされていたのかもしれません。

放置しておくとサイトが閲覧できくなる可能性がありますので、早急に修復をおすすめします。

【事例公開】 WordPress がハッキングされたときの復旧方法

その他ご不明な点がありましたら、メールまたは X( @ReinxWeb )にてお問い合わせください。

変更履歴

2024.07.01

マルウェアスキャンの画像を追加しました。

2024.06.30

functions.php の修復方法を具体的に書き直しました。

Author

SEO コンサルティング業務を中心に、サイト制作・コンテンツ販売・メディア運営代行業務を行っています。当サイト(Naifix)では、おもにブログ初心者向けのノウハウを配信。
ココナラでは WordPress エラー修正やハッキング修復、Search Console 分析サービスをご提供しています。