サーバー全体が侵害され、複数のWordPressと周辺ファイルへ不正コードが広がった事例がありました。確認対象は数十万規模。正規データを残しながら不正コードを除去し、再侵入条件を見直し、24時間以内に公開状態へ復旧しました。本記事では、サイトや攻撃手法を特定できる情報を伏せ、対応の考え方だけを紹介します。

発生していたこと

一つのWordPressだけではなく、同じサーバー内の複数箇所に不正なファイルやコードが作られ、正常なファイルにも混入が見られる状態でした。単純に目立つファイルを数個消すだけでは、別の場所から再び動く可能性があります。

一方、サーバーを丸ごと削除すると、正常なサイト、画像、記事、設定、業務データまで失います。そこで、公開影響を抑えながら、残すものと除去するものを分ける必要がありました。

重要だった前提

「怪しい文字列があるから削除」ではなく、配置、内容、更新時刻、正規配布物との差、ログ、他の感染箇所との関係を見て判定することです。WordPressの正規ファイルにも、単純な検索では怪しく見える処理が含まれます。

対応の順番

1

現状を保全

調査時点の状態と重要ログを残し、作業で失われる情報を減らしました。

2

範囲を把握

WordPressごとの構成、正規配布物との差、異常な配置や時刻から候補を絞りました。

3

不正コードを除去

正規データを保護しながら、確認した不正ファイルと混入コードを除去・修復しました。

4

入口と権限を見直す

古い構成、資格情報、管理者、書き込み権限など、再侵入につながる条件を確認しました。

5

公開状態を確認

主要ページ、管理画面、フォーム、エラー、再生成の兆候を確認し、公開へ戻しました。

なぜサーバーを全部消さなかったのか

新規作成の方が合理的な場合もあります。しかしこの事例では、複数サイトと残すべきデータがあり、全削除は事業への影響が大きい状態でした。感染していないバックアップが確実にあるとも限りません。

そのため、まず現状を残し、機械的な比較と人の判断を組み合わせて、不正なものを絞りました。大量だからこそ、単純な一括削除ではなく、判定基準をそろえる必要があります。

この事例から分かること

  • 「ウイルスを消す」と「安全に公開復旧する」は別の作業
  • バックアップがあっても、感染前か・何を失うかの確認が必要
  • サーバー会社、制作会社、復旧担当は、それぞれ役割が違う
  • 大量感染でも、正規データを残せる可能性はある
  • 復旧後に入口を塞がなければ、同じ状態を繰り返す

24時間以内という時間は、この事例の条件と対応結果です。すべての案件に同じ時間を約束するものではありません。早い段階で操作を止め、権限と情報がそろうほど、判断しやすくなります。

複数サイトやサーバー全体に異変がある時は。

一つずつ削除を始めず、影響範囲と現在の操作状況を教えてください。制作会社からの技術相談にも対応します。

感染・改ざんを相談 制作会社向け支援を見る