Warning: unlink(/home/layer2024/layerworks.co.jp/public_html/wp/wp-content/uploads/mw-wp-form_uploads/.htaccess): No such file or directory in /home/layer2024/layerworks.co.jp/public_html/wp/wp-content/plugins/mw-wp-form/classes/models/class.directory.php on line 314
WordPressが改ざんされていないかWP-CLIで確認する方法 – 株式会社レイヤーワークス

WordPressが改ざんされていないかWP-CLIで確認する方法

WordPressが改ざんされていないかWP-CLIで確認する方法

WP-CLIのverify-checksumsを使い、WordPressコアや公式プラグインのファイルを公式チェックサムと照合する方法を解説します。警告の読み方と、結果だけで安全を断定しないための確認範囲も整理します。

見た目が正常でもファイルは確認したい

WordPressの改ざんは、トップページがすぐ壊れるとは限りません。既存ファイルへのコード追加や、目立たないファイルの設置だけで進む場合があります。WP-CLIのチェックサム照合は、公式配布ファイルと現在のファイルが一致するかを確認する入口になります。

作業前にバックアップとパスを確認する

確認コマンド自体はファイルを書き換えませんが、異常が見つかった後に慌てて削除や再インストールをしないことが重要です。先にデータベースとファイルを保全し、WordPressルートで実行しているか確認します。

cd /home/example/public_html
wp core version
wp core verify-checksums

WordPressコアを公式チェックサムと照合する

成功時は、インストールがチェックサムに対して検証できたことが表示されます。不一致時は、対象ファイルと警告が出ます。日本語版などではロケールを明示すると切り分けやすくなります。

WP-CLI公式ドキュメントによると、このコマンドはWordPressを読み込む前に実行され、現在のバージョンに対応するWordPress.orgのチェックサムと比較します。

wp core verify-checksums --version="$(wp core version)" --locale=ja

ルート直下の余分なファイルも確認する

通常の照合に加えて、WordPressルートにある未知のファイルも確認したい場合は、–include-rootを付けます。ただし、サーバー会社や運用担当者が置いた正規ファイルが警告されることもあるため、警告=マルウェアと即断しません。

wp core verify-checksums --include-root --version="$(wp core version)"

公式プラグインも照合できる

WordPress.orgで配布されているプラグインは、plugin verify-checksumsで照合できます。Pro版、販売サイトから購入したもの、独自開発プラグインには公式チェックサムがない場合があります。

「チェックサムを取得できない」という警告は、直ちに改ざんを意味しません。配布元、現在のバージョン、正規のZIPと比較できるかを確認します。

wp plugin verify-checksums --all --strict

結果の読み方

結果次に行うこと
Success未確認領域が残ることを前提にログを保存
File does not verify変更日時と差分を保全して調査
File should not exist正規用途のファイルか確認
チェックサム取得不可配布元の正規ファイルと別途比較

チェックサムだけで安全とは断定できない

コアが一致しても、wp-content/uploads、独自テーマ、独自プラグイン、wp-config.php、データベースは別の確認が必要です。管理者ユーザー、最近のファイル変更、cron、サーバーログも合わせて見ます。

参考:WP-CLI「wp core verify-checksums」WordPress Developer Blog「Website security checks」

まとめ

verify-checksumsは、改ざん調査の結論ではなく、公式ファイルとの差分を見つけるための基礎点検です。異常が出たら証拠を残し、原因を確認してから復旧します。