不正アクセスされたかどうか確認する方法は?
答え:正常時のバックアップデータと比較する。
不正アクセスされたかもしれない。 でも、自覚症状がない。 どうやって確認すればいい?
実は、とてもシンプルです。
正常時のバックアップと今のファイルを比較すれば、 変更されたファイルがすぐわかります。
なぜ自覚症状がないのか
不正アクセスの種類
1. 目に見えるタイプ(自覚症状あり)
例:
- サイトが真っ白
- 見知らぬページが表示される
- 管理画面にログインできない
- 変な広告が表示される
気づきやすさ: ◎
2. 目に見えないタイプ(自覚症状なし)
例:
- リダイレクト型マルウェア
- 検索エンジン経由だけ別サイトに飛ばす
- 管理者が直接アクセスしても気づかない
- バックドア
- 裏口を仕込まれている
- いつでも侵入できる状態
- 見た目は正常
- 情報収集型
- 個人情報を盗む
- ログイン情報を送信
- 見た目は正常
気づきやすさ: ×
自覚症状がない不正アクセスの恐ろしさ
問題点:
- いつ侵入されたかわからない
- どのファイルが改ざんされたかわからない
- ユーザーには被害が出ているのに、管理者は気づかない
実例:
あるサイトの事例:
- 管理者は何も気づかない
- でも、Googleから「マルウェアサイト」として警告
- ユーザーがアクセスすると「危険なサイト」と表示
- 調査したら、3ヶ月前から感染していた
確認方法
方法1: バックアップデータと比較(最も確実)
手順:
ステップ1: 正常時のバックアップを用意
- 最近のバックアップ(1週間以内)
- 正常に動いていた時期のバックアップ
ステップ2: ファイルを比較
比較ツール:
- WinMerge(Windows)
- Meld(Mac/Linux)
- FTPソフトの同期機能
比較するファイル:
wp-config.php
index.php
.htaccess
wp-includes/
配下のファイルwp-admin/
配下のファイル- テーマのファイル(特に
functions.php
)
ステップ3: 変更されたファイルを確認
正常な変更:
- WordPress本体の更新
- プラグインの更新
- 自分で編集したファイル
異常な変更:
- 身に覚えのないコードが追加されている
- 暗号化されたコード(base64など)
- 不審なリンクが挿入されている
判断のポイント:
// 正常なコード例
<?php
get_header();
?>
// 異常なコード例
<?php
eval(base64_decode('怪しい文字列'));
?>
方法2: レンタルサーバーの監視機能を使う
Xserverの場合:
- サーバーパネルにログイン
- 「WordPress Security」をクリック
- 「ログイン試行回数制限」「国外IPアクセス制限」の設定を確認
- 「ファイル改ざん検知」機能を確認(上位プランのみ)
さくらインターネットの場合:
- コントロールパネルにログイン
- 「Webサイト/データ」→ 「ファイルマネージャー」
- ファイルの更新日時を確認
- 身に覚えのない更新があればチェック
ConoHa WINGの場合:
- コントロールパネルにログイン
- 「サイト管理」→ 「サイトセキュリティ」
- 「WordPress Security」で改ざん検知を確認
方法3: WordPressプラグインで確認
推奨プラグイン:Wordfence Security
インストール手順:
- WordPress管理画面
- プラグイン → 新規追加
- 「Wordfence」で検索
- インストール → 有効化
スキャン実行:
- Wordfence → Scan
- 「Start New Scan」をクリック
- スキャン完了まで待つ(5〜20分)
結果の見方:
正常:
✅ No issues found
異常:
❌ File appears to be modified
❌ File contains known malware signatures
❌ Backdoor detected
対処法:
- 異常なファイルを削除
- 正常なバックアップから復元
方法4: アクセスログを確認
確認する内容:
1. 不審なログイン試行
// 正常なアクセス
192.168.1.1 - - [20/Jan/2025:10:00:00] "POST /wp-login.php" 200
// 異常なアクセス(短時間に大量)
123.45.67.89 - - [20/Jan/2025:10:00:00] "POST /wp-login.php" 401
123.45.67.89 - - [20/Jan/2025:10:00:01] "POST /wp-login.php" 401
123.45.67.89 - - [20/Jan/2025:10:00:02] "POST /wp-login.php" 401
(数百回繰り返し)
2. 不審なファイルへのアクセス
// 異常なアクセス
123.45.67.89 - - [20/Jan/2025:10:00:00] "GET /wp-content/uploads/shell.php" 200
shell.phpなど、身に覚えのないファイルへのアクセスは要注意
方法5: Google Search Consoleで確認
手順:
- Google Search Consoleにログイン
- 「セキュリティと手動による対策」をクリック
- 「セキュリティの問題」を確認
警告が出ている場合:
❌ マルウェアが検出されました
❌ ハッキングされたコンテンツ
対処が必要です。
高価なセキュリティソフトは不要
なぜ不要なのか
理由1: レンタルサーバーに標準装備されている
すでに備わっている機能:
- ファイアウォール
- WAF(Web Application Firewall)
- 不正アクセス検知
- DDoS攻撃対策
追加でソフトを入れる必要はない。
理由2: WordPressプラグインで十分
無料で使えるプラグイン:
- Wordfence Security(無料版で十分)
- SiteGuard WP Plugin(国産、日本語対応)
これだけで:
- マルウェアスキャン
- ログイン保護
- ファイアウォール
月額数千円のセキュリティソフトは不要。
理由3: 本質はバックアップとアップデート
不正アクセスを防ぐ最も効果的な方法:
- 定期的なバックアップ
– 侵入されても復元できる – 変更されたファイルを特定できる
- こまめなアップデート
– 脆弱性を塞ぐ – 侵入される前に対策
これをやっていれば、高価なソフトは不要。
不正アクセスを防ぐ方法
対策1: バックアップを必ず取る
頻度:
- 毎日(自動バックアップ)
- 重要な変更前(手動バックアップ)
保存先:
- サーバー外(Dropbox、Google Driveなど)
- サーバー内だけだと、侵入者に削除される可能性
推奨プラグイン:
- UpdraftPlus(自動バックアップ、クラウド保存)
対策2: 常に最新にアップデート
対象:
- WordPress本体
- プラグイン
- テーマ
頻度:
- 更新通知が来たらすぐ
- 月1回は確認
なぜ重要:
- 脆弱性が発見されると、すぐに悪用される
- 古いバージョンは狙われやすい
対策3: 強力なパスワードを使う
推奨:
- 16文字以上
- 英数字+記号
- パスワード管理ツールで生成
避けるべき:
- password123
- admin
- 会社名や自分の名前
対策4: ログイン保護を強化
方法:
- ログイン試行回数制限
– サーバーの機能を使う – またはプラグイン(SiteGuard WP Plugin)
- 2段階認証
– Google Authenticatorプラグイン – スマホアプリで認証
- 国外IPアクセス制限
– サーバーの機能で設定 – 日本国外からのアクセスをブロック
対策5: 不要なプラグインを削除
なぜ重要:
- 使っていないプラグインも攻撃対象
- 脆弱性があれば侵入される
やること:
- 使っていないプラグインは削除
- 無効化するだけでは不十分
不正アクセスされた場合の対処法
ステップ1: 冷静になる
まず深呼吸。 パニックにならず、順番に対処すれば大丈夫。
ステップ2: バックアップから復元
手順:
- 正常時のバックアップを用意
- サーバーのファイルを全削除
- バックアップから復元
- データベースも復元
注意:
- 部分的な復元ではなく、全体を復元
- 中途半端に残すと、マルウェアが残る可能性
ステップ3: パスワードを全変更
変更するパスワード:
- WordPress管理者パスワード
- サーバーのFTPパスワード
- データベースパスワード
- サーバー管理画面のパスワード
ステップ4: プラグイン・テーマを最新に
やること:
- すべてのプラグインを最新版に更新
- テーマも最新版に更新
- WordPress本体も最新版に更新
ステップ5: セキュリティプラグインでスキャン
やること:
- Wordfence Securityをインストール
- フルスキャンを実行
- 問題があれば修正
ステップ6: Googleに再審査をリクエスト
Search Consoleで警告が出ている場合:
- マルウェアを削除
- 「再審査リクエスト」を送信
- Googleが確認(数日〜1週間)
よくある質問
Q1: 高価なセキュリティソフトを勧められたけど、本当に不要? A: はい、不要。レンタルサーバーの機能と無料プラグインで十分。バックアップとアップデートの方が重要。
Q2: バックアップがない場合は? A: WordPressを再インストールして、記事データだけ復元。ただし、手間がかかるので、今後は必ずバックアップを。
Q3: 不正アクセスされても気づかないことってある? A: ある。リダイレクト型マルウェアは、管理者には見えない。定期的にスキャンが重要。
Q4: 感染したら、サーバーごと変えるべき? A: 不要。バックアップから復元して、パスワードを全変更すればOK。
Q5: 定期的にスキャンすべき? A: はい。月1回はWordfenceでスキャン推奨。
トラブルシューティング
問題1: Wordfenceでエラーが大量に出る
原因:
- テーマやプラグインのカスタマイズが「改ざん」と誤検知
対処法:
- エラー内容を確認
- 自分で変更したファイルなら「無視」に設定
問題2: バックアップと比較しても違いがわからない
対処法:
- まずWordfenceでスキャン
- Google Search Consoleで警告を確認
- サーバー会社のサポートに相談
問題3: 復元してもまた侵入される
原因:
- パスワードが弱い
- バックドアが残っている
- プラグインの脆弱性
対処法:
- パスワードを強力なものに変更
- すべてのファイルを再インストール
- 不要なプラグインを削除
まとめ:バックアップとアップデートが最強の対策
不正アクセスの確認方法
✅ バックアップデータと比較(最も確実) ✅ レンタルサーバーの監視機能 ✅ Wordfenceでスキャン ✅ アクセスログを確認 ✅ Google Search Consoleで確認
高価なセキュリティソフトは不要
- レンタルサーバーに標準装備
- 無料プラグインで十分
- 本質はバックアップとアップデート
最も効果的な対策
- 定期的なバックアップ
– 毎日自動バックアップ – サーバー外に保存
- こまめなアップデート
– 更新通知が来たらすぐ – 月1回は確認
- 強力なパスワード
– 16文字以上 – パスワード管理ツールで生成
結論
不正アクセスの確認は、バックアップとの比較が最も確実。
高価なセキュリティソフトを買うより、 バックアップとアップデートをしっかりやってください。
それが最強の対策です。
関連記事
サーバー管理のプロだけど質問ある? いまさら聞けない質問の答えがここにある|svadmin.net