WordPressのセキュリティ

ログイン画面をネットに晒すリスクは避けられない

WordPressが便利な理由の1つはブラウザだけあれば記事の投稿や編集どころかサイトの設定までもできる点です。

しかしその代償としてWordPressへのログインは世界中から可能になっています。

例えばこのホームページのURLはhttps://static-site-generator.comですが、その末尾に/wp-login.phpをつけてhttps://static-site-generator.com/wp-login.phpとするとWordPressのログインURLになります。

もし、このサイトがWordPress作成されていたら、WordPressのログイン画面(下図)が表示されてしまいます(実際にはこのサイトはWordPressでなくSIRIUSで作成されていますのでログイン画面はそもそも存在しません)。

この画面から不正ログインされれば前述のように記事の投稿や編集どころかサイトの設定までもできてしまいます。

そのため、メールアドレス(またはユーザー名)とパスワードは外部に漏れないように、またを推測されないように厳重に管理する必要があります。

WordPressはサーバーにインストールするため、このログイン画面をネットに晒すリスクは避けられません。

WordPressは常に更新する必要がある

世界の多くのサイトがWordPressで作成されているため、WordPressは攻撃者の格好のターゲットになっています。

オープンソースで開発されているのも誰でも見れるソースコードから脆弱性を探せるため攻撃者には好都合です。

そのため、WordPressの脆弱性が発見されるたびにそれを塞ぐアップデートがリリースされます。

しかも、脆弱性が発見されアップデートが必要になるのはWordPress本体だけではありません。 WordPressのプラグインもテーマも同じように常に更新していく必要があります。

更新で不具合が起こることがある

更新はWordPressの管理画面に通知されますし、自動更新することもできます。

自動更新できるなら更新の手間はないじゃないか、と思われるかもしれません。

しかし、現実には更新によってWordPress、プラグイン、テーマの間で互換性が取れなくなる不具合が起こる可能性があります。

自動更新でそのような問題が起こると「ホームページがいつの間にか壊れていた」となります。

そのような事態を避けるためには手動で互換性を確認しながら更新するかありません。

それでもプラグインやテーマによっては新しいバージョンのWordPressに対応できない場合もあります。

その場合は代替できるものを探すか自力で開発するなどの対応が必要です。

それでもいつまでも更新しない選択肢は取れません。

長期間更新されていないWordPressのサイトは脆弱性を突かれて攻撃される可能性が高いのですから。

静的サイトジェネレーターでホームページを作る

このようにサーバーにインストールされるWordPressはセキュリティ上の問題を抱えています。

しかし、WordPressがサーバーでしか動作しない以上、根本的な解決方法はありません。

そのため、最近はそうしたセキュリティの問題がない静的サイトジェネレーターが注目されています。

静的サイトジェネレーターとはWindowsやMacなどのパソコンで動作し、以下のようなウェブサイトに必要なファイルを生成してサーバーにアップロードするツールです。

  • HTML
  • CSS
  • 画像
  • JavaScript

静的サイトジェネレーターで作成されたホームページにはプログラムがありません。

正確にはJavaScriptはプログラムですが、サーバーでは動作するのではなくサイトにアクセスしたブラウザ上で動作します。

つまり、サーバー上で動作するプログラムは存在しません。

そのため、静的サイトジェネレーターで作られたホームページにはWordPressのように不正侵入されるリスクがそもそも存在しません。