雑記

情報流出が止まらないので、自分のブログを守るためにやったこと【WordPress・エックスサーバー】

情報流出のニュースが止まらない

ここ数日だけでも、コンビニのアプリ、古本チェーン、飲食チェーンのアプリなど、身近なサービスから数百万件規模の情報流出が相次いで公表されています。この記事を書いている間にも、私のところに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バージョンでは動作しません」と出ました。土台が古すぎて、新しい版が入らなかったんです。

  1. エックスサーバーのサーバーパネルにログイン
  2. 「PHP Ver.切替」を開く
  3. ブログのドメインを選んで、新しいバージョン(推奨と書いてあるもの)に変更
  4. すぐにトップページ・記事・お問い合わせページを開いて、表示が崩れていないか確認

古いテーマを使っていると、PHPを変えたときに表示が崩れることがあります。崩れたら、同じ画面で元のバージョンに戻せば直ります。私の場合は問題ありませんでした。

3. WAFをオンにする

  1. サーバーパネルの「WAF設定」を開く
  2. ブログのドメインを選ぶ
  3. XSS対策・SQL対策・ファイル対策を「ON」にして、確認画面へ進む
エックスサーバーのWAF設定。XSS対策・SQL対策・ファイル対策をON
XSS・SQL・ファイル対策をONに(反映までしばらくかかります)

WAFの近くにある「海外からのアクセス制限」(REST API・XML-RPC)は、むやみにオンにしないでください。JetpackやGoogleのサービスなど、海外のサーバーから来る正常な通信まで止まることがあります。

WordPress側でやったこと

4. 本体・プラグインを最新にする

管理画面の「ダッシュボード → 更新」から、WordPress本体と、更新が出ているプラグインを全部更新しました。弱点(脆弱性)が見つかると、ふさいだ新しい版が出るので、古いままは穴があいたままと同じです。

5. 使っていないプラグインを消す

「プラグイン → インストール済みプラグイン」で、使っていないものを「停止」→「削除」。私は5つ消しました。使っていなくても、入っているだけで穴になることがあります。

6. 使っていない合鍵(アプリケーションパスワード)を消す

  1. 「ユーザー → プロフィール」を開く
  2. いちばん下の「アプリケーションパスワード」の一覧を見る
  3. 「最後に使用」が空欄(一度も使われていない)ものや、心当たりのないものを「取り消し」

合鍵は、スマホアプリやAIなどの外のツールに渡す鍵です。私の場合は、AIをいろいろ試していたころに作った合鍵が3つ、一度も使われずに残っていました。

7. ログインIDを外から見えなくする(スニペット)

WordPressは、初期設定のままだと、ブログのURLのうしろに決まった文字を足すだけでログインIDがわかってしまうことがあります。これを止めるのに使ったのが「スニペット」です。

スニペット=小さなプログラムの切れはし。WordPressに「こういうときは、こうして」という追加ルールを足すものです。

私は「WPCode」という無料のプラグインを使って貼りました。

  1. プラグイン「WPCode」を入れる(入っていなければ「プラグイン → 新規追加」で検索)
  2. 管理画面の「Code Snippets → + Add Snippet」
  3. 「カスタムコード(新規スニペット)を追加」→「+ カスタムスニペットを追加」
  4. コードの種類で「PHP Snippet」を選ぶ
  5. タイトル(例:ユーザー一覧を外から隠す)を入れて、下のコードをそのまま貼る
  6. 右上のスイッチを「Active」にして「Save Snippet」
WPCodeのスニペットを追加する画面。カスタムコード(新規スニペット)を追加
「カスタムコード(新規スニペット)を追加」から始めます
// ログインしていない人に、ユーザー一覧(ログイン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」の設定を変えました。

UpdraftPlusの設定。データベースはDaily・14、保存先はGoogle Drive
記事のデータ(データベース)は毎日・14日分、保存先はGoogleドライブに
  • 記事のデータ(データベース)は毎日。週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時間くらい
  • 鍵を強く・穴をふさぐ・入口で止める・戻せるように
  • それでも防げないことはあるので、更新と点検を続ける

-雑記

Copyright© ポイ娘|ポイ活・優待クロスの攻略記録 , 2026 All Rights Reserved Powered by AFFINGER5.