WordPressは非常に便利なCMSではありますが、WordPressについて調べると「脆弱性」というキーワードとセットになっていることが多く、セキュリティ面で心配される方もいるでしょう。
そこでこの記事ではWordPressの脆弱性に関して、実際にWordPressを使用する上での安全性やセキュリティ対策などについてご紹介します。
目次
WordPressに脆弱性はあるのか?
先に結論から言いますと、WordPressに脆弱性はあると言えばありますが、無いと言えば無いです。
これを聞いた方は恐らく「どういうことだ?」と混乱されるかと思いますので、順を追って解説していきたいと思います。
そもそも脆弱性とは?
そもそも「脆弱性」という言葉の意味について、はっきりと把握できていないという方もいるでしょうから、先にこの脆弱性についてご紹介します。
この脆弱性はプログラムやツール等の構造に不具合や不完全な部分があることにより、セキュリティ上の欠陥が存在してしまっている状態のことを指します。
つまりWordPressの脆弱性というのは、使用しているWordPressのテーマやプラグインも含めて外部からの攻撃の影響を受けてしまう状態にあるということになります。
脆弱性がある場合もある
WordPressはオープンソールのCMSであるため、開発者自身はもちろんのこと他の利用者や開発者も常にチェックしているツールです。
そのためWordPressやテーマ・プラグインに不具合や欠陥があった場合は、その都度アップデートを行い常にセキュリティを最新のものにしています。
この状態ではWordPressに脆弱性がない状態と言えますが、実際のところは誰も気付いていないだけで脆弱性が存在している場合もあります。加えて、その後に新機能を追加した新バージョンがリリースされたは良いが、その新バージョンに今までになかった脆弱性が潜んでいるケースもあります。
これがWordPressに脆弱性があると言えるし無いと言える理由で、頻繁に動きのあるWordPressではその状況もめまぐるしく変化するため、基本的には安全だが絶対ではないのです。
デフォルト状態のWordPressではURLさえ分かれば誰でもログイン画面に到達できる仕様になっています。
更に、管理者のデフォルトIDをそのまま利用していたためにパスワードクラックによって管理者権限を奪われ、サイト改ざんなどの不正アクセスを受けてしまうというパスワードそのものの脆弱性が原因となるケースもあります。
脆弱性の原因はケースバイケース
そんなWordPressに潜む脆弱性ですが、その脆弱性の原因は実はWordPress開発者のミスや見落としだけではなく、以下のような他の原因によって引き起こされる場合もあります。
- WordPressの更新を怠った
- テーマに問題があった
- プラグインに問題があった
- テーマ・プラグインの更新を怠った
前述でもご紹介の通り、WordPress本体だけではなくテーマやプラグインも定期的に機能追加や脆弱性の対応を行うためにバージョンアップを行います。しかし、開発者側が新バージョンをリリースしても、肝心のサイト管理者がその新バージョンへの更新を行わなければWordPressの脆弱性はそのまま放置されてしまいます。
また、WordPress本体に問題がなくても自分で探してきたテーマやプラグインに脆弱性があり、そこから攻撃されてしまうケースや、そもそも開発者が完全に活動を止めてしまい新バージョンもリリースされずに放置されるというケースも存在します。
こういった脆弱性は可能性があるというだけの話だけではありません。実際に2021年の4月にはプラグイン「Redirection for Contact Form 7」で何度か脆弱性が公表され、同じく2021年4月に今度はWordPress本体における情報漏洩に関する脆弱性も発覚しています。
WordPressの脆弱性を突いた攻撃例
これらWordPressの脆弱性によって被害が発生してしまった事例はいくつもあります。
WordPress及びプラグインの脆弱性は2021年には989件報告されており、同一原因で表面化したものも含め多数のプラグインに脆弱性の存在が明らかになっています。2022年の1年間でも47件公表されており、決して少ないとは言えない状況です。
とはいえ、まだまだ実感が湧かないかと思いますので、実際に脆弱性への攻撃を受けたことで被害が発生してしまった実例をいくつかご紹介します。
機能REST APIの事例
WordPressにはREST APIという機能が搭載されていますが、2017年時点ではこの機能に脆弱性がありました。
そして、その脆弱性を狙ったゼロデイ攻撃が実行され、全世界で155万を超えるサイトが改ざんされるという大惨事を招く結果となりました。
ゼロデイ攻撃とは、プログラムの脆弱性が発見された際、それが広く知られたり、プログラムの提供元が改修に必要なアップデートを配布したりする前に、その脆弱性を使って攻撃する手法の総称です。
実際にどのような脆弱性に対する攻撃かは限定されませんので、ゼロディ攻撃によるWordPressの被害についても1つに限定できず、さまざまな攻撃を受ける可能性があると言えます。
組織のセキュリティを脅かす攻撃の中で、厄介なものの一つがゼロデイ攻撃です。ソフトウェアの脆弱性(セキュリティホール)に対して、対策が講じられる前にサイバー攻撃が仕掛けられます。 ここではその仕組みや特徴、被害事例とともに、対策方法と攻撃を受けた場合の対処法を解説します。 ゼロデイ攻撃とは ゼロデイ攻撃は、ソフトウェアの脆弱性を突いたサイバー攻撃の一種です。脆弱性が発見・対策される前に行われる攻撃を…
プラグインWP GDPR Complianceの事例
2019年にはプラグイン「WP GDPR Compliance」の脆弱性を突かれたゼロデイ攻撃がありました。
このプラグインには2つの脆弱性があり、その2つを組み合わせることでサイト管理者以外でも管理権限のあるユーザーを作成できる状況にありました。
つまり、この脆弱性を悪意のある第三者に利用されてしまうと、簡単にサイト改ざんやマルウェアの埋め込みをされてしまい、自分だけではくWordPressサイト訪問者にも被害が出てしまう状態にありました。
テーマOneToneの事例
2022年にはプラグイン「OneTone」の脆弱性を突かれたSQLインジェクションによるデータベースへの攻撃がありました。
これにより、リダイレクトで他のサイトへ飛ばすコードを埋め込まれるという被害を受けたサイトが大量に発生しました。
更に厄介なことにこのプラグインは開発者がアップデートを行わず、脆弱性に対抗する手段がなくなってしまったため、もともとOneToneを使用していたWordPressサイトの管理者は他のプラグインへの変更をせざるを得ない状況になってしまいました。
SQLインジェクションとは、WordPressでも使われているデータベースに対する攻撃です。
データベースにはコンテンツの内容やフォームから寄せられた顧客からの問い合わせ内容、会員の個人情報などさまざまなデータが保存されています。データベースに対して不正なコードを送信することで不具合を生じさせ、保存された個人情報などのデータを不正に取得することも可能となります。
SQLインジェクションとは、Webサイトが利用するデータベースを狙った攻撃手法です。ただ、この名前を知っていても、その特徴やどのような被害が生じるか分からない方も多いのではないでしょうか。 この記事では、初心者の方でもわかるようにSQLインジェクションの特徴や仕組み、被害内容、実際の被害事例を紹介します。その上で対策の代表例も紹介するので、自社でSQLインジェクション対策をする際の参考にして下さい…
プラグインFancyboxの事例
2015年にはプラグイン「Fancybox」の脆弱性を突いたクロスサイトスクリプティング(XSS)による攻撃があり、サイト訪問者を悪意のあるサイトへ誘導する手口が横行していました。
しかもこのプラグインは当時は人気が高く、多くのWordPressサイト管理者が利用していたことから、これに比例して被害対象となるサイトもかなりの数にのぼりました。
クロスサイトスクリプティング(XSS)とは、Webサイトの脆弱性を利用してHTMLに悪意のあるスクリプトを埋め込む攻撃です。
攻撃者は、まず悪意のあるコンテンツやプログラムを保存したウェブサイト(ウェブサーバー)を確保します。その上で攻撃対象のウェブサイトの脆弱性をついて罠をしかけておきます。ユーザーが攻撃対象のサイトを訪れ罠にかかってしまった場合、悪意のあるウェブサイトのプログラムが実行されてしまうというものです。
単純なものでは、たとえば掲示板やコメント欄などに攻撃者が悪意あるウェブサイトのURLを含んだリンクを投稿し、ユーザーがそのリンクをクリックした途端に被害を受けるというような攻撃があります。
これによってユーザーはフィッシング詐欺を受けたり個人情報を不正に盗み取られてしまったりします。なかには、検索エンジンにサイトの構造を知らせるサイトマップが改ざんされ、検索順位が低下したり、トラフィック数が減少したりといったケースもあります。
クロスサイトスクリプティングって何?サイトのセキュリティを高めるために
クロスサイトスクリプティングとはどういったものかご存知ですか?ここでは、図を使ってわかりやすく説明します。その上で被害事例や、この攻撃による被害を予防するための対策(入力値制限・サニタイジング・WAF)を徹底解説します。 クロスサイトスクリプティング(XSS)とは? クロスサイトスクリプティング(XSS)とは、攻撃対象のウェブサイトに、脆弱性がある掲示板のようなウェブアプリケーションが掲載されてい…
脆弱性の有無を確認する方法
WordPressの脆弱性は過度に心配する必要はありませんが、前述でご紹介のような被害も実際に発生していることから、決して無視できる問題ではありません。
なので、実際に自分が管理しているWordPressサイトに現時点で脆弱性あったらどうしようと不安に感じられる方もいるでしょうが、実はその点はそこまで深刻な問題ではありません。
というのも、WordPressの脆弱性に関しては脆弱性診断というサービスが存在しますので、これを利用することで簡単に脆弱性の確認が可能となります。
一つネックがあるとすれば、この診断サービスはWordPressに利用しているサーバーなどのオプションとして利用する場合は割と安価で診断することができるのですが、外部のサービスで脆弱性診断を行うとそこそこ割高となっています。
セキュリティのプロに訊く! 狙われるWordPress、まずは脆弱性診断で対策を。
ホームページを簡単に作れるコンテンツ管理システム(CMS)であるWordPressのシェアは、世界中のすべてWEBサイトのうち35.8%に達しています。CMS市場におけるWordPressの世界シェアは62.6%、日本国内のCMS市場では82%以上という圧倒的なシェアを誇っています。 最近では企業のホームページもWordPressで作られるケースが多くなり、WEB制作会社もWordPressでサイ…
ご紹介の通り、WordPressのセキュリティや脆弱性については常に進化し続けるものですので、「1回行えばあとは大丈夫」というものではなく定期的に行う必要がありますので、可能な限りサーバー等の割安なオプションを利用することがコスト的にも望ましいです。
簡単にできるWordPressの脆弱性対策
WordPressの脆弱性に関して自分でできる対策はいくつかあります。
もちろん、それでも100%安全と断言することはできませんが、対策を行うのと行わないのとでは危険度に大きな差が生まれますので、改めて確認しましょう。
最新バージョンへのアップデート
WordPress本体だけではなく、テーマやプラグインはご紹介の通り機能追加だけではなくセキュリティの強化を行うためのアップデートを行っています。
そのためこれらを最新のバージョンに保つことは、WordPressの脆弱性によるリスクを無くす重要な作業となります。
よって、何かしら特別な理由でもない限りは、アップデートが来たらすぐさま最新バージョンへ更新することが必要です。
※自動アップデート機能をONにしておくことも有効です。
不要なテーマ・プラグインの削除
上記のバージョンアップにもつながる項目ですが、有効化していないテーマやプラグインであっても古いバージョンのまま放置していると、その脆弱性を利用される可能性があります。
なので、利用していなくても、WordPressにインストールされているテーマやプラグインは全て最新バージョンに更新する、もしくは今後も利用する予定がないのであれば、テーマ・プラグインの整理もかねて削除することが推奨されます。
その他セキュリティ全体としての対策
上記の他にも脆弱性だけではなく、セキュリティ全体を通して行える対策も複数あります。
パスワードの強化
当たり前のことではありますが、第三者から見て予測しやすいIDやパスワードを使用することは、セキュリティ上よろしくありません。特に今は悪意のある人間は手動でIDとパスワードを予測して不正アクセスを試すのではなく、ツールなどを用いて機械的に様々な組み合わせで試みます。
よってパスワード等の強化は必須の対策と言えます。
ログインページの変更
ちなみに、ログインページ変更はプラグインSiteGuard WP Pluginを導入することで簡単に変更が可能です。
上記の不正アクセスの予防として、ログインページの変更を行うという対策も有効です。特にWordPressの場合は、初期状態のままではログインページを簡単に特定することができますので、そのページ自体にたどり着けないように変更できます。
セキュリティ系のプラグインの導入
プラグインによるセキュリティ強化という観点で言えば、上記のログインページの変更の他にもスパムコメント対策としてAkismet、セキュリティ全般に強いSiteGuard WP Pluginといったセキュリティ強化プラグインを導入することも有効です。
特にSiteGuardプラグインで設定できる「ひらがなの画像認証」は、日本語キーボード以外では難しいため海外からの不正アクセスを大幅に削減できます。
>SiteGuard WP Pluginでサイトを守る!設定と注意事項
セキュリティ系のプラグインの詳細は以下のページにてご紹介しておりますので、WordPressの脆弱性だけではなくセキュリティ全般も気になる方はご覧ください。
WordPressのセキュリティについて。被害事例や即可能な対策など
初心者でも簡単にWebサイトを作れることから多くのシーンで利用されているCMSのWordPressですが、一つ大きなデメリットがあります。 多くのWebサイトに使われているからこそ、常に悪意のある第三者による攻撃(SQLインジェクション・OSコマンドインジェクション・クロスサイトスクリプティング等)の対象となりやすいということです。 そうした理由から「WordPressに脆弱性が見つかった」「Wo…
パソコンを最新バージョンに
そもそも論になりますが、使用しているパソコンのOSが古いままの場合は、そこからログイン情報が漏洩してしまったり遠隔操作によりサイト改ざんを行われてしまうリスクも発生してしまいます。
幅広く認知されている例で言えばIE(Internet Explorer)です。IEは既にサポートが終了していますので、当然更新も止まっている状態ですので、脆弱性があったとしても何の対策もされず攻撃され放題という状況になりますので、注意が必要です。
まとめ
ここまでWordPressの脆弱性に関する情報や、その対策方法についてご紹介してきましたが、ここで勘違いしてはいけないのはWordPressはしっかりと管理すれば安全性は保てるという点です。
どうしても「脆弱性」という言葉から、WordPressは危険なCMSではないのかというイメージを持たれる方もいるかと思います。
もちろん脆弱性のリスクはこれから先も付いて回る存在となります。しかし、ご紹介の通り脆弱性やセキュリティ周りの対策をしっかりと行い、それを継続できればWordPressサイトでも基本的には問題なく運用することができます。
その為の安全対策ですので、WordPressでサイト運用を行う場合はしっかりと対策を行いながら運用するようにしましょう!
「WordPressを導入したい」「色々な用途に使いたい」という人に!
なんでもできるKAGOYAのレンタルサーバー
法人利用率80%、多数の導入実績。
自社国内データセンターで25年以上の実績。障害に強いサーバー構成で、多くの法人様から選ばれています。
サーバー移転に伴う作業も専門スタッフにおまかせ下さい。