情報漏えいの報道が続くと、「うちのホームページは大丈夫だろうか」というご相談が増えます。

最初にお伝えしておきたいのは、報道されるような大規模な漏えいと、会社案内が中心のWordPressサイトとでは、抱えているリスクの種類が違うということです。会員情報や決済情報を大量に持つサービスと、お問い合わせフォームが1つあるコーポレートサイトとでは、守るべきものの量も、狙われ方も異なります。

とはいえ、コーポレートサイトにも個人情報は存在します。お問い合わせフォームから届いた氏名、メールアドレス、電話番号、相談内容です。そして、更新が止まったWordPressは、改ざんや不正な管理者の追加といった被害を受けやすくなります。

この記事では、WordPressのコーポレートサイトについて、管理画面から確認できる5つのポイントを整理します。

1. WordPress本体・プラグイン・テーマは更新されているか

管理画面の「ダッシュボード → 更新」を開きます。更新待ちの件数が多いほど、既知の弱点を抱えたまま運用している可能性が高くなります。

確認するのは次の3点です。

  • WordPress本体が最新、またはそれに近いバージョンか
  • 更新待ちのプラグインが何件あるか
  • 最後に更新したのがいつか

「何年も触っていない」という状態であれば、それ自体が一番大きなリスクです。ただし、長く更新していないサイトをいきなり一括更新すると、表示が崩れたり画面が真っ白になったりすることがあります。バックアップを取ってから、順番に進める必要があります。

日々の更新を止めないために、WordPress本体とプラグインは、自動更新を有効にすることをおすすめします。バックアップから戻せる状態を整え、更新後の表示やフォームの動作も確認する運用にしておくと安心です。独自のカスタマイズが多いサイトでは、自動更新の対象を制作・管理担当者と相談してください。

あわせて確認したいのが、サーバーで使っているPHPのバージョンです。PHPが古く、WordPress本体やプラグインの動作要件を満たしていないと、更新できない場合があります。WordPressだけでなく、PHPの更新も忘れないようにしましょう。PHPを切り替える際も、テーマやプラグインとの互換性を確認し、バックアップを取ってから進めます。

2. 使っていないプラグインが残っていないか

「プラグイン → インストール済みプラグイン」を開きます。

停止中のプラグインも、ファイルはサーバー上に残っています。停止しているだけでは安全とは言えません。使っていないものは削除するのが基本です。

特に、無効にしたまま何年も使っていないプラグインは、残しておく必要があるかを見直しましょう。テーマも同様で、使っていないものは削除をおすすめします。ただし、子テーマを使っている場合の親テーマなど、現在のサイトに必要なものは残します。

あわせて、開発が終了したプラグインや、長期間更新されていないプラグインがないかも確認します。以前は定番だったフォーム系のプラグインでも、すでに開発やサポートが終了しているものがあります。

脆弱性が見つかっても修正されず、公開が停止されるプラグインもあります。必要な機能であれば、開発やサポートが続いている代替プラグインへの切り替えを検討してください。

選ぶ際に見たいのは、最終更新日だけでなく、更新の頻度と利用実績です。公式ディレクトリでは「有効インストール数」も参考になります。利用数が少ないものは、同じ機能を持つ、利用実績と更新が十分にあるものを優先するのが無難です。ただし、ダウンロード数や利用数の多さだけで安全性は判断できません。サポートへの対応や、現在のWordPressとの互換性もあわせて確認しましょう。

3. 知らない管理者アカウントがないか

「ユーザー → ユーザー一覧」を開き、権限が「管理者」のユーザーを確認します。

  • 見覚えのないユーザー名やメールアドレスがないか
  • 退職した担当者や、以前の制作会社のアカウントが残っていないか
  • 「admin」のような推測されやすいユーザー名を使っていないか

ユーザー名は、通常の管理画面からは変更できません。変更用のプラグインを使う方法もありますが、一度の変更のためにプラグインを増やしたくない場合は、データベースから直接変更する方法もあります。こちらはデータベース操作に慣れた制作・管理担当者へ依頼し、バックアップを取ったうえで対応することをおすすめします。ユーザー名の見直しとあわせて、強いパスワードや二要素認証も確認してください。

身に覚えのない管理者がいる場合は、すでに侵入されている可能性があります。その場合は、削除して終わりにせず、いつ・どこから作られたのかを調べる必要があります。

4. お問い合わせフォームの送信データはどこに残っているか

コーポレートサイトで個人情報がたまる場所は、ほぼお問い合わせフォームです。

フォームのプラグインによっては、送信された内容をメールで送るだけでなく、WordPressのデータベースにも保存します。管理画面に「問い合わせデータ」「受信メッセージ」のようなメニューがあれば、そこに過去の送信内容が残っています。

確認したいのは次の点です。

  • 送信内容がデータベースに保存される設定になっているか
  • 保存されている場合、何年分・何件たまっているか
  • それを見られる管理者は誰か
  • 添付ファイルを受け付けている場合、そのファイルはどこに置かれているか

必要のないデータは、保存しない設定に変える、または一定期間で削除する運用にすると、万一のときの被害を小さくできます。

データベースに送信内容を保存するプラグインでは、自動削除の機能や設定がなければ、手動で削除するまでデータがたまり続けます。保存期間を決め、対応が済んで保存する必要のなくなったデータは、定期的に整理しましょう。

クオンツデザインでは、フォームの保存データを一定期間で削除するためのプラグイン対応も行っています。使っているフォームや保存方式によって対応方法が異なりますので、手動での整理が難しい場合はお問い合わせください。

5. バックアップはどこに置かれているか

バックアップは大切ですが、置き場所を間違えると、それ自体が漏えいの原因になります。

  • バックアップ用のプラグインが、サーバーの公開領域にファイルを作っていないか
  • 以前の担当者が、サイトを丸ごと圧縮したファイルをサーバーに置いたままにしていないか
  • データベースを書き出したファイルが残っていないか

バックアップには、フォームの送信データも、ユーザー情報も含まれます。外部から直接ダウンロードできる場所に置かれていないかは、一度確認しておきたいところです。

自分で確認しても分からないこと

ここまでの5つは、管理画面から確認できる範囲です。一方で、次のようなことは管理画面だけでは分かりません。

  • テーマのコードの中に、危険な処理や不審な記述がないか
  • サーバーに、見覚えのないファイルが置かれていないか
  • アクセスログに、攻撃や不審なアクセスの痕跡が残っていないか

また、どれだけ調べても「情報漏えいは起きていない」と証明することはできません。アクセスログの保存期間はサーバーによって異なり、遡れる範囲にも限界があります。確認できるのは、「この範囲を調べて、問題は見つからなかった」というところまでです。

会員サイト・ネットショップの場合

会員情報や決済情報を扱うサイトは、この記事の範囲を超えます。扱う情報の量も、求められる安全性の水準も異なるため、専門の診断会社による脆弱性診断をご検討ください。

まとめ

  • 更新が止まっていないか
  • 使っていないプラグインが残っていないか
  • 知らない管理者がいないか
  • フォームの送信データがどこに残っているか
  • バックアップがどこに置かれているか

この5つを確認するだけでも、今のサイトがどんな状態にあるかは、かなり見えてきます。

クオンツデザインでは、WordPressのコーポレートサイトを対象に、テーマのコード・プラグイン・アクセスログを確認する簡易セキュリティチェックを行っています。確認した範囲と、確認できなかった範囲を分けてご報告します。自分で見てみたがよく分からない、見る時間がない、という場合はご相談ください。

この記事は人間による下書きからAIのサポートを経て、最後に人間がチェックして投稿しております。