情報流出のニュースが止まらない
ここ数日だけでも、コンビニのアプリ、古本チェーン、飲食チェーンのアプリなど、身近なサービスから数百万件規模の情報流出が相次いで公表されています。この記事を書いている間にも、私のところに2社から「個人情報が漏えいした可能性があります」というお知らせメールが届きました。
自分が使っているサービスも普通に入っていて、大きな会社でもこの状況です。だからこそ、自分のブログは自分で守らないとだめだと思いました。ブログが乗っ取られたら、記事を書き換えられたり、読者を偽サイトに飛ばされたりするかもしれません。
そこで、AI(Claude Code)にブログの状態を点検してもらい、相談しながら対策しました。かかった時間は1時間くらいです。
なんで今まで設定していなかったのか
点検してみたら、穴だらけでした。原因はたぶん、2020年にブログを開設してから、サーバーやWordPressの設定をほとんど触っていなかったことです。
- サーバーのPHP(WordPressを動かす土台)が古いまま。新しいプラグインが入らない状態だった
- サーバーのWAF(怪しいアクセスを止める機能)がオフのまま
- 昔入れて使っていないプラグインが5つ。1つは配布が止まっていた
- 一度も使っていない合鍵(アプリケーションパスワード)が3つ
- ログインIDが外から見える状態
ブログを開設したときのまま、設定を見直していない人は特に注意してください。記事は毎日書いていても、裏側の設定は何年もそのまま…という人は多いはずです(私がそうでした)。
WordPressとサーバー、両方やる必要がある
対策を進めるうえで、まず理解しておく必要があったのが、WordPressの管理画面で行う設定と、レンタルサーバー(私はエックスサーバー)の管理画面で行う設定が別々にある、ということです。
| たとえると | 実際は | 守るところ |
|---|---|---|
| マンションの建物・管理会社 | レンタルサーバー | 建物の入口、管理人室の鍵 |
| 自分の部屋 | WordPress(ブログ) | 部屋の鍵、部屋の中のもの |
部屋の鍵をいくら強くしても、管理人室の合鍵(サーバーのログイン)を取られたら終わり。だから両方やります。
サーバー側でやったこと(エックスサーバー)
1. サーバーのログインに2段階認証
エックスサーバーのアカウントに、認証アプリ(Google Authenticator)で2段階認証を設定しました。サーバーの管理画面に入られると、ブログもまるごと触られてしまうので、いちばん最初にやるところです。
2. PHPを新しくする
お問い合わせフォームのプラグインを更新しようとしたら、「お使いのPHPバージョンでは動作しません」と出ました。土台が古すぎて、新しい版が入らなかったんです。
- エックスサーバーのサーバーパネルにログイン
- 「PHP Ver.切替」を開く
- ブログのドメインを選んで、新しいバージョン(推奨と書いてあるもの)に変更
- すぐにトップページ・記事・お問い合わせページを開いて、表示が崩れていないか確認
古いテーマを使っていると、PHPを変えたときに表示が崩れることがあります。崩れたら、同じ画面で元のバージョンに戻せば直ります。私の場合は問題ありませんでした。
3. WAFをオンにする
- サーバーパネルの「WAF設定」を開く
- ブログのドメインを選ぶ
- XSS対策・SQL対策・ファイル対策を「ON」にして、確認画面へ進む

WAFの近くにある「海外からのアクセス制限」(REST API・XML-RPC)は、むやみにオンにしないでください。JetpackやGoogleのサービスなど、海外のサーバーから来る正常な通信まで止まることがあります。
WordPress側でやったこと
4. 本体・プラグインを最新にする
管理画面の「ダッシュボード → 更新」から、WordPress本体と、更新が出ているプラグインを全部更新しました。弱点(脆弱性)が見つかると、ふさいだ新しい版が出るので、古いままは穴があいたままと同じです。
5. 使っていないプラグインを消す
「プラグイン → インストール済みプラグイン」で、使っていないものを「停止」→「削除」。私は5つ消しました。使っていなくても、入っているだけで穴になることがあります。
6. 使っていない合鍵(アプリケーションパスワード)を消す
- 「ユーザー → プロフィール」を開く
- いちばん下の「アプリケーションパスワード」の一覧を見る
- 「最後に使用」が空欄(一度も使われていない)ものや、心当たりのないものを「取り消し」
合鍵は、スマホアプリやAIなどの外のツールに渡す鍵です。私の場合は、AIをいろいろ試していたころに作った合鍵が3つ、一度も使われずに残っていました。
7. ログインIDを外から見えなくする(スニペット)
WordPressは、初期設定のままだと、ブログのURLのうしろに決まった文字を足すだけでログインIDがわかってしまうことがあります。これを止めるのに使ったのが「スニペット」です。
スニペット=小さなプログラムの切れはし。WordPressに「こういうときは、こうして」という追加ルールを足すものです。
私は「WPCode」という無料のプラグインを使って貼りました。
- プラグイン「WPCode」を入れる(入っていなければ「プラグイン → 新規追加」で検索)
- 管理画面の「Code Snippets → + Add Snippet」
- 「カスタムコード(新規スニペット)を追加」→「+ カスタムスニペットを追加」
- コードの種類で「PHP Snippet」を選ぶ
- タイトル(例:ユーザー一覧を外から隠す)を入れて、下のコードをそのまま貼る
- 右上のスイッチを「Active」にして「Save Snippet」

// ログインしていない人に、ユーザー一覧(ログインID)を見せない
add_filter( 'rest_endpoints', function ( $endpoints ) {
if ( ! current_user_can( 'list_users' ) ) {
unset( $endpoints['/wp/v2/users'] );
unset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] );
}
return $endpoints;
} );
// /?author=1 や作成者ページからログインIDがわかるのを防ぐ(トップページへ転送)
add_action( 'template_redirect', function () {
if ( is_user_logged_in() ) {
return;
}
if ( isset( $_GET['author'] ) || is_author() ) {
wp_safe_redirect( home_url( '/' ), 301 );
exit;
}
}, 1 );貼ったら、ログアウトした状態(またはシークレットウィンドウ)で、あなたのブログのURL/wp-json/wp/v2/users を開いてみてください。ユーザー名が出ずにエラーになれば成功です。
コードは1文字でも欠けるとエラーになります。WPCodeは、エラーが出たら自動でスニペットを止めてくれるので、あわてなくて大丈夫です。ただし、この対策の効果は小さめ。IDがわかっても、2段階認証があれば入れません。
8. バックアップを毎日、別の場所へ
どんなに守っても100%はないので、やられても戻せるようにしておきます。バックアップのプラグイン「UpdraftPlus」の設定を変えました。

- 記事のデータ(データベース)は毎日。週1回だと、最大6日分の記事が消えるかもしれない
- 保存先はGoogleドライブ。サーバーの中だけに置くと、サーバーごとやられたとき一緒に消える
- 設定を保存したあと、Googleの許可画面が出たら許可する(しないと保存されない)
9. WordPressのログインの2段階認証
ログアウトしてログインし直したら、パスワードを入れずに入れてびっくりしました。Jetpackというプラグインで、WordPress.comのアカウントでログインする仕組みになっていたからです。WordPress.comのほうにはSMSの2段階認証が入っていたので、ここはOKでした。
Jetpackを使っている人は、ブログの本当の鍵がWordPress.comのアカウントになっていることがあります。WordPress.comの「セキュリティ → 2段階認証」を確認してみてください。
スニペットすらわからない状態から、ここまでわかった
正直なところ、最初は手順どおりに操作していただけで、それぞれの設定が何を意味しているのか、ほとんど理解できていませんでした。「スニペット」という言葉も、今回はじめて知りました。
それでも、1つずつ「これは何のための設定か」を確かめながら進めると、やっていることは次の4つに整理できました。
| 目的 | やったこと |
|---|---|
| 鍵を強くする | 2段階認証、使っていない合鍵を消す |
| 穴をふさぐ | 本体・プラグイン・PHPの更新、使っていないプラグインの削除 |
| 入口で止める | WAF、ログインIDを隠す |
| やられても戻せる | バックアップを毎日、別の場所へ |
それでも残るリスクと、これから気をつけること
| 残るリスク | これから気をつけること |
|---|---|
| 偽サイトに自分でパスワードを入れてしまう(フィッシング) | メールやSMSのリンクからログインしない。ブックマークから入る |
| パソコンがウイルスに感染して、保存したパスワードやログイン状態を盗まれる | OSとブラウザを最新に。知らない拡張機能やソフトを入れない |
| 新しい弱点が見つかる | 更新を放置しない。プラグインは自動更新に |
| 使っているサービス側からの流出 | パスワードを使い回さない |
| バックアップが本当に戻せるかは、まだ試していない | いつか、戻す練習をする |
一度やって終わりではなく、更新と点検を続けるのが大事だとわかりました。
ブログをやっていない人も、これだけは
今回のニュースのように、使っているサービスから情報が漏れるのは、自分では防げません。できるのは「漏れても被害を広げない」ことです。
| やること | なぜ |
|---|---|
| パスワードを使い回さない | 1か所漏れると、同じパスワードのサービスが全部やられる |
| 証券口座・銀行・メールに2段階認証 | パスワードが漏れても入られない |
| リンクではなくブックマークからログイン | 「流出のお知らせ」を装った偽メールが増える |
| ログイン・出金の通知をオン | やられたとき、すぐ気づける |
ポイ活をしていると、証券口座やカードのアカウントがどんどん増えます(FIREロードマップ)。数が多い人ほど、使い回しをやめるだけでも効果は大きいです。
まとめ
- 情報流出が止まらない今、自分のブログは自分で守る
- ブログ開設のときの設定のままの人は特に注意
- WordPress(部屋)とサーバー(建物)の両方を守る。全部で1時間くらい
- 鍵を強く・穴をふさぐ・入口で止める・戻せるように
- それでも防げないことはあるので、更新と点検を続ける