
はじめに

最近、不正アクセスによる個人情報漏洩のニュースを目にする機会が増えています。「こうした被害は大企業のニュース」と思われがちですが、実際にはWordPressで構築された中小企業のサイトやECサイトも決して例外ではありません。
世界中で広く普及しているWordPressは、その利用者の多さゆえに攻撃者(ハッカー)の格好の標的となっています。特に、自動化されたツールを使って多数のサイトを巡回し、サイトの規模や知名度に関係なく「脆弱性のあるサイト」を無差別に狙う手口が横行しています。そのため、「うちのような小さなサイトは狙われないだろう」という油断は極めて危険です。
本記事では、WordPressサイトで情報漏洩が起こる仕組みをはじめ、特に注意が必要なサイトの特徴、実際に漏洩した場合の影響やリアルな攻撃の手口、そして今すぐ取り組むべきセキュリティ対策まで分かりやすく解説します。
WordPressサイトで情報漏洩が起こる仕組み
WordPressでは、記事の本文やユーザー情報、各種プラグインのデータなどをデータベース(MySQL/MariaDB)で管理しています。ECや会員機能、お問い合わせフォームのデータを保存するプラグインを利用している場合、顧客の氏名・住所・電話番号といった個人情報もこのデータベースに保存されることが大半です。
そのため、悪意のある攻撃による情報漏洩の多くは、まさにこのデータベースが標的とされることで発生しています。
1. データベースの接続情報自体が盗まれる
WordPressの標準設定では、データベースに接続するための情報(データベース名、ユーザー名、パスワードなど)が、wp-config.phpというファイルに暗号化されずそのまま書き込まれています。正常なサーバー環境であれば、このファイルの情報が外部から閲覧されることはありません。
しかし、脆弱性や設定の不備を突かれてサーバーに侵入するためのバックドア(不正プログラム)を設置されると、ファイルの内容を読み取られ、接続情報そのものが漏洩する恐れがあります。
万が一この接続情報が攻撃者の手に渡ると、データベース上の重要なデータをすべて抜き取られてしまうといった重大なリスクにつながります。
2. プラグインなどの脆弱性を悪用される
また、サーバー内に不正なプログラムが設置されていない場合でも、データベース内の情報が漏洩するリスクはあります。
1つは、プラグイン等の脆弱性を悪用した「SQLインジェクション」です。これは、外部から不正なコマンドを送信することで、データベース内の情報を直接読み取る手口です。
もう1つは、「管理者権限の不正取得」です。脆弱性などを突かれて管理者アカウントを乗っ取られると、正規の管理画面から顧客情報が直接閲覧されたり、データとして外部へ出力(エクスポート)されたりする危険性があります。
3. ファイルから情報が漏れる
データベース内のデータを抜き取られるケース以外にも、ファイルから情報漏洩につながることもあります。
- サーバーの公開ディレクトリに置かれたデータベースのバックアップファイル
- 個人情報や機密情報が記録されたデバッグログ(debug.log)
- 移行作業などで一時的に作成し、削除し忘れたファイル
特に注意が必要なサイト
個人情報を取得・管理する機能を持つサイトでは、情報漏洩への対策が欠かせません。
なかでも、次のようなサイトは特に注意が必要です。
ECサイト
WordPressでECサイトを運営している場合、購入者の氏名や住所、電話番号、メールアドレス、注文履歴といった個人情報は、基本的にWordPressのデータベースに保存されます。
クレジットカード番号は、決済代行会社の画面で入力する方式や、カード情報を直接送信して「トークン(別の文字列)」に置き換える方式が主流であるため、WordPress側には保存されないのが一般的です。(※実際の仕様は、導入している決済サービスによって異なります)
ただし、カード情報を保存していなくても、サイトを改ざんして偽の決済画面へ誘導したり、不正なスクリプトで入力情報を盗み取ったりする手口があるため、注意が必要です。
会員サイト・予約サイト
会員制サイトでは、会員の氏名やメールアドレス、電話番号などが保存されます。また、予約サイトでは、会員登録の有無にかかわらず、予約者の連絡先や予約内容などが保存されるのが一般的です。
こうしたサイトは、膨大な件数の個人情報を保持しているケースが多いため、特に厳重な注意が必要です。
お問い合わせ内容を保存しているサイト
WordPressの管理画面で過去のお問い合わせ内容を確認できる場合、そのデータはWordPressのデータベースなどに保存されている可能性があります。
※ 外部サービスと連携している場合もあるため、実際の保存先はプラグインや設定の確認が必要です。
お問い合わせの本文には、顧客の個人情報だけでなく、取引内容などの機密情報が含まれることが珍しくありません。そのため、何年分もの履歴をそのまま残していると、万が一情報漏洩が起きた際の被害は極めて甚大になります。
さらに注意したいのが、添付ファイルを受け付けるフォームです。設定によっては、アップロードされたファイルがサーバーの公開ディレクトリに保存され、「URLさえ知っていれば誰でも閲覧できる状態」になっているケースもあるため、十分な確認が必要です。
メールフォーム
お問い合わせ内容をデータベースに保存しないタイプのメールフォームであっても、情報漏洩のリスクは潜んでいます。
例えば、管理画面への不正ログインによってフォームの設定を書き換えられ、通知先に攻撃者のメールアドレスを追加されてしまうケースです。これに気づかないままでいると、ユーザーが送信したお問い合わせ内容が攻撃者にも筒抜けになってしまいます。
また、フォームのプログラムやページ自体に不正なコードを仕込まれ、ユーザーが入力・送信した情報がそのまま外部へ盗み取られてしまう危険性もあるため、決して安心はできません。
情報漏洩が起きた場合の影響
個人情報が漏洩した場合、サイトを復旧するだけでは対応は終わりません。
2022年4月に施行された改正個人情報保護法により、報告対象となる個人データの漏えい等が発生した場合は、個人情報保護委員会への報告と本人への通知が義務付けられています。不正アクセスによる漏えい、またはそのおそれがある場合は、対象となる本人が1人でも報告対象になり得ます。
中小企業や個人事業主も例外ではありません。報告・通知の要否や期限は、個人情報保護委員会の最新の案内を確認してください。
このほか、原因調査や顧客への対応、カード会社・決済代行会社への連絡、決済やサイト運営の一時停止などが必要になる場合があります。取引先や顧客からの信用にも影響し、被害の内容や規模によっては、対応に多額の費用と長い時間がかかります。
参考:[個人情報保護委員会:漏えい等の対応とお役立ち資料](https://www.ppc.go.jp/personalinfo/legal/leakAction/)
攻撃手法の実態
不正アクセスというと、IDやパスワードの総当たり攻撃を想定しがちですが、強固な認証情報が設定されている場合、突破に膨大な試行回数が必要となるため、攻撃者にとっては非効率な手法となります。
現在、WordPressサイトに対するサイバー攻撃の主流となっているのは、WordPress本体やテーマ、プラグインの「脆弱性」を悪用した手口です。
弊社が過去に復旧対応を行ったサイトの事例においても、被害の大半はパスワードの推測・漏えいではなく、こうしたシステム上の脆弱性を突かれたケースが占めています。
IDやパスワードの漏えいに起因する不正アクセスの事例も存在するため、引き続き厳重な管理が必要です。
「admin」や「password123」といった推測されやすい文字列の使用が危険であることはもちろんですが、他のサービスと使い回しているパスワードは、別のサービスから漏れたID・パスワードの組み合わせを試す「リスト型攻撃」によって突破される恐れもあります。
既知の脆弱性を狙った自動攻撃
攻撃者は事前に特定の標的を定めるのではなく、ツールを用いて脆弱性が放置されているサイトを機械的かつ無差別に探索します。したがって、企業の規模やサイトのアクセス数にかかわらず、すべてのWebサイトが攻撃対象となるリスクを抱えています。
具体的な攻撃は、次のような流れで機械的に繰り返されます。
1. 既知の脆弱性を突くリクエストをサイトに送信する
2. 攻撃が成功するかどうかを確認する
3. 成功した場合は、脆弱性の種類に応じて情報を取得したり、バックドアや不正な管理者アカウントを設置したりする
4. 失敗した場合は、別の脆弱性やサイトを対象に攻撃を試す
公表されたばかりの脆弱性を利用した攻撃
脆弱性の詳細や攻撃手法がひとたび公表されると、それを悪用したサイバー攻撃が急増する傾向があります。
なかでも、「ログイン不要で誰でも実行できる」といった攻撃のハードルが低い致命的な脆弱性には、一刻も早い対応が求められます。
修正版(アップデート)を適用せずに放置する期間が長引くほど、攻撃者の標的にされるリスクは高まり続けます。
必要な対策
1. WordPress本体・テーマ・プラグインを最新に保つ
基本となるセキュリティ対策は、WordPress本体やテーマ、プラグインを継続的にアップデートし、常に最新の状態に保つことです。これにより、すでに修正されている脆弱性を狙った攻撃を未然に防ぐことができます。
ただし、何年も開発が止まっているプラグインなどの場合は注意が必要です。たとえ「最新版」を使っていても、未修正の脆弱性がそのまま放置されている恐れがあります。そのような場合は、プラグインの使用を停止するか、安全に更新されている代替製品への乗り換えを検討することが重要です。
2. セキュリティ設定を追加する
更新とあわせて各種設定を見直し、サイトのセキュリティを強化しましょう。
- 強固な認証システムの導入: 管理画面への多要素認証(MFA)の導入と、ログイン試行回数の制限
- パスワード管理の徹底: 推測されにくい複雑なパスワードの設定と、他サービスとの使い回しの禁止
- アカウント権限の最小化: 管理者権限や顧客情報の閲覧権限は、必要最小限のアカウントにのみ付与する
- 防御機能の活用: サーバーや外部サービスが提供するWAF(Webアプリケーションファイアウォール)の有効化
- 重要ファイルの保護: wp-config.phpの適切なパーミッション設定と、Web経由での直接アクセスの制限
- 不正改ざんリスクの軽減: 管理画面からのテーマやプラグインのファイル編集機能の無効化
- 通信の暗号化: お問い合わせフォームや管理画面を含めたサイト全体のHTTPS化(常時SSL化)
- 周辺環境の保護: サーバーの管理画面、SFTP、メールなど、WordPress周辺の関連アカウントの厳重な管理
3. 保存している個人情報を減らす
万が一データ漏えいが発生した場合のリスクを最小限に抑えるため、「システム上に保存する情報を必要最小限に留める」という原則が重要になります。
たとえば、お問い合わせフォームの受信データについて、データベースへの保存が業務上必須でなければ、保存機能自体を無効化することを推奨します。保存が必要な場合であっても、長期間放置せず、定期的にデータを削除する運用フローを構築してください。
さらに、顧客情報を多く扱うECサイトや会員制サイトにおいて、自社で継続的なアップデートや保守を行うリソース(人員や技術)が不足している場合は、WordPressでの運用そのものを見直すことも検討に値します。システムの保守やセキュリティ対策が標準で提供されている専用プラットフォーム(SaaS等の外部サービス)へ移行することも、非常に有効なリスク対策の一つです。
4. 侵入に備える(早期発見と復旧)
攻撃を完全に防ぐことは困難です。万一侵入された場合に備え、次の準備もしておきましょう。
- ファイルの改ざん検知機能の導入
- アクセスログや操作ログの記録・保管
- 定期的なバックアップの取得
まとめ
WordPressで構築されたサイトにおいても、不正アクセスによる情報漏洩のリスクは常に存在します。特に、ECサイトや会員・予約サイト、お問い合わせフォームを設置しているサイトでは、「どのような情報を」「どこに保存しているか」を正確に把握し、適切な対策を講じることが重要です。
WordPress本体・テーマ・プラグインの定期的な更新を基本としつつ、強固なセキュリティ設定、保存データの見直し(最小化)、そして監視や復旧への備えを組み合わせ、継続的かつ安全なサイト運用を心がけましょう。
WordPress環境の最新化・セキュリティ対策のご相談
「テーマやプラグインを更新したいが、PHPのバージョンが古くて更新できない」、「更新するとサイトが崩れそうで手を付けられない」といったお悩みはありませんか。
当社では、PHPを含むWordPress環境全体の最新化から、セキュリティ設定の追加まで一貫して対応しています。自社サイトの状況が気になる方は、お気軽にご相談ください。











