CMSとは?
「CMS」は「Contents Management System:コンテンツ・マネジメント・システム」の略で、Webサイトの作成を簡単にしてくれる管理ツールです。HTMLやCSSといった専門的な知識、技術が無くてもテキストの入力や、画像のアップロードをするだけで、Webサイトの構築、更新を行うことができます。主な機能としてマルチデバイスに対応している、SNSとの連携が可能、SEO対策に対応している、などがあります。これらはスマホやタブレットとの親和性が高い機能です。特にブログの運営にはメリットがあります。 またビジネス用途としては、マーケティングのツールとしても利用されています。Webサイトの訪問履歴から様々な分析が可能になりました。訪問者を種別に分ける機能などもあり、Webサイトを情報公開のツールとしてだけでなく、見込み客の生成など、情報の収集ツールという機能が付加されたことは大きなメリットとなっています。なぜ、CMSが狙われる?
CMSはWebサイトで利用されています。Webサイトは常に稼働しています。常に稼働しているWebサイト(CMS)に脆弱性があれば攻撃者は当然のように攻撃をしかけてくるものです。また、CMSへの攻撃は主にWebブラウザで対応ができます。URLに不正なコードを入力することでCMSの脆弱性を悪用できるからです。この手軽さは、攻撃者にとってメリットになっています。攻撃の種類ですが、情報窃取やデータの改ざんだけでなく、不正サイトへリダイレクトさせるなど複数あります。これら攻撃を巧みに利用して、機密情報や個人情報の窃取、詐欺による金銭窃取、仮想通貨(暗号資産)の採掘をさせる仕組みを不正に埋め込むなどの悪用が確認されています。 CMSの代表であるWordPressはオープンソースです。プラグインのソースも公開されています。攻撃者はソースを確認・分析して利用価値のある攻撃方法を開発しています。そのため攻撃手法として、プラグインの脆弱性を利用した攻撃が多いです。その手法も巧妙で、Webサイトの管理者が気づかず、さらに攻撃の痕跡が残らないように作られています。プラグインは、Webサイトの管理者にとって便利な機能が多数あるため、なくてはならないものだと思います。しかし攻撃者は、そのプラグインの脆弱性を探し、悪用しているのが現実です。CMSのセキュリティリスク
引用:JPCERT/CC インシデント報告対応レポート2021年7月1日~2021年9月30日より
上記のグラフはJPCERTが2021年7月~2021年9月の間に報告を受けたインシデントのカテゴリー別の割合です。フィッシングサイトによる被害報告が全体の70%を超えていることがわかります。引用:JPCERT/CC インシデント報告対応レポート2021年7月1日~2021年9月30日より
上記のグラフは、JPCERTが2020年10月~2021年9月の間に報告を受けたフィッシングサイトの件数です。1500件を下回った月は11月と2月の2回だけです。営業日で考えると毎日100件近い件数がJPCERTに報告されています。報告書には、銀行やクレジットカード会社の会員用ログインページを偽装したもの、携帯通信キャリアのユーザー用ログインページを装ったものが多数報告されたとあります。これら偽造されたWebページにCMSの脆弱性は深くかかわっています。プラグインを悪用した攻撃手法について説明していきます。プラグインを悪用した攻撃方法
攻撃者はCMSの脆弱性を見つけると管理者に気づかれないように、脆弱性を悪用してこっそりと別のWebページを作成します。もしくは、不正なスクリプトを埋め込み、偽のWebページへ遷移(リダイレクト)させます。このような攻撃は、主にプラグインの脆弱性を悪用して行われます。このような攻撃が毎日どこかのCMSで行われていることはJPCERTの報告を見ても明らかだと思います。このことから脆弱性を放置したままのWebサイトは大量に存在していると思われます。それでは、CMSのセキュリティ対策について説明します。CMSのセキュリティ対策
ここではCMSのセキュリティ対策としてWAF(Web Application Firewall)の導入とJVN iPediaを利用した脆弱性の情報収集について説明します。対策1:最新のバージョンに更新、セキュリティパッチ適用
バージョンアップやセキュリティパッチ適用は重要な対策となります。なのでJVN iPediaを利用した脆弱性の情報収集について説明します。ご利用のCMSやプラグインの脆弱性があるか認識しておくことは重要なことがと思います。JVN iPediaは脆弱性対策情報のデータベースです。下記のURLからアクセスできます。TOPページにある「脆弱性対策情報データベース検索」にご利用のCMSの名前を入力して検索ボタンを押すと対象の脆弱性情報が出力されます。引用: https://jvndb.jvn.jp/
図では「WordPress」を入力した結果が表示されています。「WordPress プラグイン名」で検索すると利用しているプラグインの脆弱性が表示されます。JVN iPediaでは、脆弱性の概要、深刻度(CVSS値)、対策などが記載されています。対策2:WAFによる不正攻撃の検知と遮断
CMSの運用にはプラグイン機能を含めて、最新バージョンを利用することがサイバー攻撃を受けないための重要な対応となりますが「すぐにバージョンアップ、パッチ適用することができない」という管理者の方も多いと思います。バージョンアップやパッチ適用には、導入テストなど検証に時間を要することは十分あり得る話だと思います。そのための備えとしてWAF の導入を推奨します。WAFは現在、アプライアンス型WAFとクラウド型WAFの2つが主な提供方法となっています。- アプライアンス型WAF アプライアンス型WAFはベンダー提供のハードウェアです。Webサーバの前段に設置して運用するタイプです。導入には専門知識のある技術者によるチューニングが必要になります。 ハードウェア購入というコストが発生します。また、運用には専門知識のある技術者を育てる必要があります。
- クラウド型WAF クラウド型WAFはベンダーの提供するWAFをクラウド上で利用します。アプライアンス型WAFのようなハードウェア購入は不要です。アップデートなどの運用はベンダーが対応してくれるため、コストはアプライアンス型WAFよりコストがかかりません。導入する企業側の作業としては導入時の簡単な設定のみになります。