Webサイトに関する最低限の知識を持っている方なら「WordPress(ワードプレス)」というCMSをご存知の方も多いのではないでしょうか。WordPressはオープンソースであることに加えて、テーマやプラグインによる拡張機能が豊富であり、さまざまなWebサイトを最低限の知識と技術で構築できるのが大きな魅力です。
その一方で、WordPressの脆弱性を悪用した攻撃が多いことも事実であり、セキュリティ対策が求められています。
本稿では、WordPressのセキュリティ対策に有効なWAF、セキュリティプラグインについて解説します。
WordPressとは
WordPressは、PHPで開発されたオープンソースのCMSの一つで、Webサイト制作に必要なHTMLやCSSなどの専門知識を必要とせずにWebサイトを構築することができます。
WordPressの初版が公開されたのは2003年5月27日です。すでに20年以上の歴史があり、今までに多数のアップデートが行われ、さまざまな機能が追加されてきました。
WordPressは、利用の自由を保障するために「制約なし」「無保証」という規定を取り込んだGPLライセンスで提供されています。世界のWebサイトにおけるWordPress利用率は40%を超えていると言われており、日本でも企業・個人を問わず、WordPressを利用するユーザーが多数存在します。
DrupalやJoomla!を含めて、三大CMSと呼ばれることもあり、その中でも圧倒的なシェアを持ち、世界で最も有名なCMSと言っても過言ではありません。
WordPressにはなぜ脆弱性が多いのか?
このWordPressになぜ脆弱性が多いのでしょうか?「オープンソースだから」「シェアが高いために狙われやすい」など、さまざまな要因を指摘されることがあります。
たしかに、オープンソースの場合、攻撃者にとってはソースコードを参照することで脆弱性を特定し、攻撃手法を確立することが容易であると考えられます。また、シェアが高い場合には攻撃者の観点から見ると「非常に効率的な標的」として捉えられる可能性があります。
別の要因として、テーマやプラグインによる「豊富な拡張機能」の脆弱性を悪用されるケースがあります。WordPressはテーマやプラグインというかたちで、デザインを変更したり、スライドショーや問い合わせフォーム、ショッピングサイトなど、さまざまな機能を追加できるようになっています。
ユーザーの好みで独自にWebサイトをカスタマイズできるのがWordPressの大きな魅力と言えますが、プラグインやテーマなどの拡張機能は不特定多数のユーザーや有志によって、自由に開発・提供されています。
そのため、WordPressの利用において、様々なメリットをもたらす反面、開発者ごとの安全性の配慮にばらつきがあるという実情から、拡張機能の脆弱性が攻撃へとつながってしまうことがあるのも事実です。
WordPress本体の脆弱性が話題になることもありますが、昨今はテーマやプラグインの脆弱性に警戒し、利用している拡張機能の把握とバージョン管理がより重要となっています。
特に多数のプラグインを利用している場合、脆弱性のあるプラグインが放置されないようにする必要があります。使用しているプラグインに脆弱性の報告がないか、古いプラグインがないか、不要なプラグインがないかを確認し、最新バージョンへの更新や削除を検討してください。
WordPressの更新におけるバージョンアップ後の動作が不安な場合には、バックアップを取得するほか、予め運用環境と同等のテスト環境を用意しておくことで、事前の動作確認が可能です。
テスト環境を標準搭載したレンタルサーバーもありますので、レンタルサーバーでWordPressを構築する予定、または構築している場合は、運用に役立つ機能が用意されていないか確認してみてください。
株式会社KDDIウェブコミュニケーションズ:CPI「SmartRelease」
WordPressの脆弱性を狙ったサイバー攻撃の例
WordPressを狙ったサイバー攻撃は多数存在し、WordPressユーザーはあらゆるサイバー攻撃に対処しなければいけません。では、具体的にどのようなサイバー攻撃があるのでしょうか?
SQLインジェクション
SQLインジェクションは、SQL文を含んだ入力データを送信してデータベースに不正にアクセスする攻撃です。
WordPress本体の脆弱性やプラグインの脆弱性により、データベース上の個人情報が盗まれたり、コンテンツの内容を改ざんされる恐れがあります。データベース内の機密情報の漏洩やデータ改ざんが発生した場合の被害は大きく、注意が必要です。
プラグインの脆弱性として発見されることの多い時期もありましたが、最近は減少傾向にあります。
クロスサイトスクリプティング
脆弱な標的サイトにアクセスするように仕向けることで、ウェブサイトが本来想定していない機能(スクリプト実行など)をブラウザ側で実行させる攻撃です。
WordPressで構築されたWebサイトに罠(偽のリンクなど)を仕掛け、その罠にかかったユーザーを不正なサイトに誘導したり、コメント欄から不正なスクリプトを混入させて、参照したユーザーに被害を与えるといった恐れがあります。
WordPress本体でもしばしば発見されていますが、プラグインの脆弱性の多くがクロスサイトスクリプティングという傾向が続いています。
ディレクトリトラバーサル
ディレクトリパスを遡ってサーバー上のファイルに不正にアクセスする攻撃で、本来公開を意図していないファイルへの参照・実行の恐れがあります。
テーマやプラグインの脆弱性を悪用した攻撃が多く、WordPressの設定ファイル(wp-config.php)を読み取る攻撃が日常的に多発しています。
関連記事:WordPressの設定ファイルの安全性とディレクトリトラバーサル
コンテンツインジェクション
WordPressで構築したWebサイトに対し、外部から不正な文字列やコードを送ることでWebサイト内のコンテンツを改ざんしたり、削除したりするサイバー攻撃です。
2017年2月に大量のWebサイトが改ざん被害に遭った事例があります。
ゼロデイ攻撃
脆弱性が発見されてから、更新プログラムやパッチなどのセキュリティアップデートが配布されるまでの間に実行される攻撃をゼロデイ攻撃と呼びます。
特定の脆弱性を指すものではないので、ゼロデイ攻撃による被害は限定されません。
ブルートフォースアタック
「総当たり攻撃」と呼ばれるパスワードを破る攻撃手法の一つです。ユーザーのアカウントとパスワードを解読するため、考えられる全てのパターンを試していくことで認証を突破します。
推測されやすいユーザー名や簡単なパスワードを設定していると、ブルートフォース攻撃により不正ログインを許す危険性が非常に高くなります。
関連記事:ユーザー情報が分かる!?WordPressの不正ログイン対策
脆弱性対策が重要であることは間違いありませんが、WordPressに対する攻撃はこのブルートフォースが最も多いと言われており、脆弱なパスワードを設定しているサイトが侵害されています。
Webサイトが改ざんされるだけでなく、スパムメール配信に悪用されるなど、加害者として見られてしまう可能性もあるため注意が必要です。利用者側で実施できる対策として、強固なパスワードを設定するよう心がけてください。
WordPressの脆弱性を狙ったサイバー攻撃の被害事例
WordPress本体の脆弱性によるWebサイトの改ざん
2021年、脆弱性を含む古いバージョンのWordPressを利用していたことにより、ある企業のWebサイトが改ざんされ、悪意のある外部サイトに誘導される状態となっていました。
レンタルサーバーが最新のWordPressに対応しておらず、WordPress本体のアップデートがされていなかった状態でした。同社は、サイバー攻撃の対策として、WordPressを最新に保つことのほかに、WAFによる対応を発表しています。
また、2017年には、REST APIの処理に起因する脆弱性を突き、全世界で150万サイト以上が改ざんされたという報道があり、大きな話題となりました。
プラグインの脆弱性によるWebサイトの改ざん
2018年、WordPressで作成された国内官公庁が管轄するWebサイトが改ざんされ、悪意のある外部サイトに誘導される状態となっていました。
原因はWordPressの古いプラグインの脆弱性が放置されたままであったことと推測されています。古いプラグインを利用している場合、最新バージョンへの更新をし、不要なプラグインは削除することが重要です。
WAFとセキュリティプラグインの活用
WAFは「Web Application Firewall(ウェブ・アプリケーション・ファイアウォール)」の略であり、文字通りWordPressのようなWebアプリケーションを保護するためのセキュリティ製品です。
WAFの基本はHTTP/HTTPS通信の検査であり、ユーザーとWordPressで交わされる通信の1つ1つをチェックしながら、SQLインジェクションやクロスサイトスクリプティングなどのサイバー攻撃からWebサイトを保護します。
WAFにより、WordPress本体やテーマ・プラグインで発見されるウェブアプリケーションの脆弱性を悪用する攻撃を効率よく防御することができます。
しかしながら、WordPressの運用ではコメントスパムなど、WAFでは対処しきれない問題もあります。このような問題には、セキュリティプラグインの活用が有効です。
EGセキュアソリューションズ株式会社では、WordPressの発展とセキュリティに貢献するため、セキュリティプラグイン「SiteGuard WP Plugin」を提供しています。WordPress公式に登録しているプラグインであり、どなたでも無償でご利用いただけますので、今すぐ始められるセキュリティ対策として役立ててください。
シンプルなプラグインですが、不正ログインを防ぐ機能のほか、コメントスパムにも有効な画像認証(CAPTCHA)など、WordPressを安全に運用するための機能が揃っています。
管理ページアクセス制限 |
ログインしていない接続元から管理ディレクトリ(/wp-admin/)を守ります。管理ページへの不正アクセスを防ぐ機能です。 |
ログインページ変更 |
ログインページ名を変更します。ブルートフォース攻撃などの不正ログインの試行を受け難くするための機能です。 |
画像認証 |
ログインページ、コメント投稿に画像認証を追加します。ブルートフォース攻撃などの不正ログイン、コメントスパムを防ぐための機能です。 |
ログイン詳細エラーメッセージの無効化 |
ログインエラー時の詳細なエラーメッセージに変えて、単一のメッセージを返します。ユーザー名の存在を調査する攻撃を受け難くするための機能です。 |
ログインロック |
ログイン失敗を繰り返す接続元を一定期間ロックします。ブルートフォース攻撃などの不正ログインを防ぐ機能です。 |
ログインアラート |
ログインがあったことをメールで通知します。不正ログイン対策の補助機能です。 |
フェールワンス |
正しい入力を行っても、ログインを一回失敗します。パスワードリスト攻撃を受け難くするための機能です。 |
XMLRPC防御 |
XMLRPCの悪用を防ぎます。 |
ユーザー名漏洩防御 |
"/?author=数字"のアスセスとREST APIによるユーザー名の漏えいを防止します。 |
更新通知 |
WordPress、プラグイン、テーマの更新をメールで通知します。 |
WAFチューニングサポート |
WAF (SiteGuard Server Edition)の除外リストを作成します。誤検出を回避するためのルールを作成する機能です。 |
いかがでしょうか?WAFとセキュリティプラグインを活用することで脆弱性を悪用した攻撃を防ぐだけでなく、WordPressの機能や仕様を知る攻撃者からの不正アクセスも防ぐことができます。
魅力的なWordPressを安心・安全に運用するために、ぜひ「SiteGuardシリーズ」の活用をご検討ください。
もっと見る: WAFって何?導入のメリットとは
- カテゴリ:
- WAF
- キーワード:
- WAF
この記事に関する製品のご紹介
ホスト型WAF「SiteGuard Server Edition」
SiteGuard Server Editionは、ウェブサーバーのモジュールとして動作するホスト型WAF製品です。Webサーバー自体にインストールするため、専用ハードウェアが必要ありません。ネットワーク構成を変更せず、できるだけシンプルに導入したいお客様に最適な製品です。
詳細はこちら