WordPress Tips | セキュリティ:ファイル変更監視を設定

web Web
スポンサーリンク

「ファイル変更監視」って何をする仕組み?

まずイメージからいきましょう。
ファイル変更監視とは、ざっくり言うと、

「サーバー上のファイルが、いつ・どこで・どう変わったかを記録し、怪しい変更があれば気づけるようにする仕組み」

です。

WordPress で言えば、例えばこんな変化を検知したいわけです。

wp-includes の中のPHPファイルが書き換えられた
wp-content/uploads に見覚えのないPHPファイルが増えた
テーマやプラグインのファイルに、勝手にコードが追記された

こういう「意図していない変更」が起きたときに、
「あれ? 何か変わってるぞ」と教えてくれるのがファイル変更監視です。


なぜファイル変更監視がセキュリティ的に重要なのか

攻撃者は「静かにファイルを書き換える」

もしサイトが侵入されたとして、
攻撃者がいきなり画面を真っ白にしたり、トップページを改ざんしたりするとは限りません。

むしろ多いのは、

目立たない場所にバックドアを仕込む
既存ファイルの末尾に数行だけ悪意あるコードを足す
uploads の中にひっそりPHPファイルを置く

といった、「静かに長く居座る」タイプの攻撃です。

この場合、

見た目は普通にサイトが動いている
でも裏でスパム送信や不正リダイレクトが行われている

という状態になりがちです。

ファイル変更監視は、
「見た目では分からない異常」を、ファイルの変化という観点から炙り出す仕組みです。

「いつからおかしくなったか」が分かるのも大きい

ファイル変更監視は、

どのファイルが
いつ変更されたか

という「タイムライン」も残してくれます。

これは、

いつから侵入されていたのか
どの時点のバックアップに戻せば安全か

を判断するうえで、非常に重要な情報です。

「気づいたときには、どこまで汚染されているか分からない」という最悪パターンを避けるためにも、
変更の履歴を持っておくことには大きな意味があります。


何をどう監視するのか(ざっくり構造を理解する)

基本の考え方:ハッシュ値やスナップショットを取る

ファイル変更監視の仕組みは、だいたいこんな流れで動きます。

ある時点で、全ファイルの状態を記録する
(ファイルのハッシュ値、サイズ、更新日時など)
その後、定期的に同じようにスキャンする
前回の記録と比べて、変わったファイル・増えたファイル・消えたファイルを洗い出す

プログラミングの感覚で言えば、

「ファイルシステムのスナップショットを取り、差分を比較する」

というイメージです。

監視対象の範囲をどう考えるか

WordPress では、監視対象をざっくりこう分けて考えると分かりやすいです。

コアファイル(wp-admin, wp-includes, ルートのPHPファイルなど)
→ 基本的に「勝手に変わらないはず」の領域。変更があれば要注意。

テーマ・プラグイン(wp-content/themes, wp-content/plugins
→ 更新やカスタマイズで変わることもあるが、頻繁ではない。意図しない変更が紛れやすい。

アップロード(wp-content/uploads
→ ファイルが増えるのは普通。ただし「PHPファイルが増えたら危険」などのルールを持てる。

全部を一律に「怪しい」とは扱えないので、
「どのディレクトリはどういう変化が普通で、どういう変化が異常か」を意識しておくと、ログの見方が一気に楽になります。


例題:ファイル変更監視で見つかる“怪しい変化”

例1:コアファイルに突然の変更

監視結果に、こんなログが出たとします。

wp-includes/load.php が 2026-02-08 03:12 に変更されました
差分:末尾に不審なコードが追加されています

この時間帯に、あなたはWordPressのアップデートも、
サーバー側のメンテナンスもしていないとします。

この場合、

誰か(何か)が勝手にコアファイルを書き換えた可能性が高い

と判断できます。

ここから、

そのファイルの中身を確認する
同じ時間帯に他のファイルも変わっていないか見る
ログインログやアクセスログと照らし合わせる

といった調査に進めます。

例2:uploads にPHPファイルが増えた

監視結果に、

wp-content/uploads/2026/02/shell.php が新規作成されました

と出たとします。

uploads に画像やPDFが増えるのは普通ですが、
PHPファイルが増えるのはかなり不自然です。

これは、

ファイルアップロード機能の脆弱性
権限設定の甘さ

などを突かれて、不正なスクリプトを置かれた可能性があります。

この場合は、

そのファイルを即削除する
同じディレクトリに他の怪しいファイルがないか確認する
アップロード周りの設定やプラグインを見直す

といった対応が必要になります。


「ウイルススキャン」と「ファイル変更監視」の違いと関係

ウイルススキャン:中身の“パターン”を見る

ウイルススキャンは、

このコードは既知のマルウェアパターンに似ているか
怪しい関数の使い方をしていないか

といった「中身の内容」を見て判断します。

未知のマルウェアや、少し工夫されたコードには、
検出が追いつかないこともあります。

ファイル変更監視:変化そのものを見る

一方、ファイル変更監視は、

中身が何であれ、「変わった」という事実
増えた・消えたという事実

に注目します。

つまり、

「これはマルウェアっぽいか?」ではなく
「そもそも、このタイミングでこのファイルが変わるのは自然か?」

という視点です。

この2つは競合ではなく補完関係で、

ウイルススキャン:既知の悪意あるコードを見つける
ファイル変更監視:不自然な変化の“兆候”を見つける

という役割分担になります。


プログラミングの感覚で捉える「ファイル変更監視」

これは「Git の差分を見る感覚」を自動化したもの

開発で Git を使っていると、

どのファイルがいつ、誰によって、どう変わったか
差分がどの行か

を常に意識しますよね。

ファイル変更監視は、
それをサーバー上のファイルに対して自動でやってくれるイメージです。

違うのは、

変更者が「自分」だけとは限らない
=攻撃者やマルウェアかもしれない

という点です。

だからこそ、

「このタイミングで、このファイルが変わるのはおかしい」

と気づける仕組みが、セキュリティとして重要になります。

「変化をゼロにする」のではなく「変化を把握する」

セキュリティの理想は、

勝手に変えられないようにする(権限の制限)

ですが、現実には、

アップデート
テーマ・プラグインの変更
運用上の修正

などで、ファイルはどうしても変わります。

ファイル変更監視は、

変化そのものを止めるのではなく
「どんな変化が起きたかを把握し、怪しいものを見つける」

ための仕組みです。

これは、
「変化を前提にしたセキュリティ設計」と言えます。


まとめ:ファイル変更監視は「サーバー上で何が起きているかを見張る目」

「ファイル変更監視を設定」というテーマの本質は、

サーバー上のファイルが
いつ・どこで・どう変わったかを記録し
不自然な変化にすぐ気づけるようにする

ということです。

押さえておきたいポイントは、

コアファイルやテーマ・プラグインが「勝手に変わる」のは強い異常サイン
uploads にPHPファイルが増えるなど、「場所とファイル種別の組み合わせ」で怪しさを判断できる
ウイルススキャンが「中身」を見るのに対し、ファイル変更監視は「変化そのもの」を見る

という3つです。

一度、「もし今この瞬間、誰かにファイルを書き換えられても、自分は気づけるだろうか?」と自分に問いかけてみてください。
その問いに「はい」と答えられるようになること——それが、ファイル変更監視を導入する意味そのものです。

Web
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました