多発するWebサイトの脆弱性をついた攻撃から身を守る方法とは
更新日 : 2020年08月05日
甚大な被害に直結するWebの脆弱性
情報セキュリティやインターネット技術を扱うメディアに限らず、一般のニュースでもWebサイトから情報が漏えいした事件が毎日のように報じられています。ここ2~3年の間に、特に深刻な被害を出した事案と言えば、Webアプリケーションの開発に使うプラットフォームとして、多くの企業が導入している「Apache Struts2」の脆弱性を突いた攻撃でしょう。
2017年の春に深刻な脆弱性が報告されて以降、東京都、日本貿易振興機構、日本郵便、地方の電力会社や放送局など、公共的な団体や著名企業からも、顧客情報などの機密情報が流出しました。特に東京都の被害は甚大で、納税を受け付けるサイトから67万件を超えるクレジットカード情報を含む個人情報が盗まれたとされています。
Webサイトのコンテンツ制作・管理に使われるツールである「WordPress」も、脆弱性が突かれサイトの改ざんやコンテンツの削除、大量のデータを送り付けてそのサイトの運営を妨害する「DoS攻撃」の踏み台にされるなど、深刻な被害が断続的に起きています。
攻撃者の標的は、OSやサーバソフト、「Apache Struts2」や「WordPress」のような著名なツールだけではありません。オープンなネットワークと接しているあらゆるWebアプリケーションやシステムは、脆弱性が見つかると同時にターゲットになってしまうのです。
IPAも脆弱性を定期報告
ソフトウェアの脆弱性は毎日のように見つかっていて、攻撃が鎮静化する兆しは見えません。IPA(情報処理推進機構)は、国内におけるソフトウェア製品やWebアプリケーションの脆弱性に関する情報の円滑な流通と対策の普及を計るという目的で、「情報セキュリティ早期警戒パートナーシップ」の体制を整備し、脆弱性に関する情報を定期的に発信しています。
四半期ごとに公開している「ソフトウェア等の脆弱性に関する届出状況」の直近のデータを見ると、届出があった件数はソフトウェア製品が55件、Webアプリケーション(Webサイト)は444件。調査期間によって状況は異なるのですが、今期は特にWebサイトの数が突出していました。
脆弱性の届出件数の四半期ごとの推移
出典:IPA「ソフトウェア等の脆弱性関連情報に関する届出状況」
脆弱性がなくならない理由とは?
脆弱性の発見が無くならないのは何故でしょうか? どのように対処していけば良いのでしょうか? ここであらためて"脆弱性"の意味を考えてみましょう。脆弱性とは、「コンピュータのOSやソフトウェアにおいて、プログラムの不具合や設計上のミスが原因となって発生した情報セキュリティ上の欠陥」(総務省:「国民のための情報セキュリティサイト」から抜粋)と定義されています。
脆弱性が無くならない理由は、一つは人間の能力の限界という問題です。OSやサーバソフトのような大きなシステムになると、設計やプログラミングのミスをゼロにすることは容易ではありません。ソフトウェアの作成時は、使われる状況を想定し、シミュレーションを繰り返しますが、時間やコストの制約もあって、あらゆる組合せを試すことは困難なのです。
もう一つは、脆弱性が生まれる経緯です。攻撃者の常套手段の一つに、OSやWebアプリケーションに対する"総当たり攻撃"があります。例えば、あるコマンド(命令)が入力されたときの動作を、数字を入れ換えながら試し、システムに侵入できそうな"スキ"を見つけ出そうとします。つまり、脆弱性とは設計やプログラミング上のミスもありますが、攻撃者が作り出してしまう、プログラムの"裏口"のような側面もあるというわけです。
第一歩は自社サイトの状況を把握すること
繰り返しになりますが、Webサイトで利用されているソフトウェアの多くに脆弱性が見つかっています。今後のWebアプリケーションの拡がりを考えると、サイト運営側は対策を強化していかなければなりません。今すぐにできることは、サイトに使われているソフトウェアの洗い出しと点検、そしてソフトウェアメーカーやセキュリティ関連の団体が発信する関連情報をマメにチェックする体制の整備です。
脆弱性が発見されると、ソフトウェアを開発したメーカーやシステムベンダーなどが、修正プログラム(パッチ)を公開します。パッチの適用は安全対策の前提ですが、関連情報の見落としや保守要員が足りないといった理由から、対応が後手に回ってしまうケースも少なくありません。
また、ソフトウェアを更新した時点で、周辺プログラムの動作にも影響を及ぼす可能性があるため、一定期間はテスト環境で運用し、安定稼働を確かめてからパッチを当てたいという事情もあるでしょう。特に多機能化した最近のWebアプリケーションは、プログラムの修正や機能追加が無関係と思えたところにも影響を与えるケースがあり、慎重さも要求されます。
"問題の長期化"は避けよう
前述したIPAの「届出状況」では、脆弱性の修正に関する状況もフォローしていますが、直近の四半期では、届出を受けてからIPAがサイト運営者に通知し、修正が行われたサイトは174件。うち171件は90日以内に修正が行われていました。
Webサイトの脆弱性の修正完了件数
出典:IPA「ソフトウェア等の脆弱性関連情報に関する届出状況」
一方、累積されたデータを見ると、通知後90日以上、情報が反映されず問題が長期化しているサイトも多く、IPAでも脆弱性管理ができないサイト運営者に対して閉鎖の検討を呼びかけるなど、以前から注意勧告を出しています。
システム上でも二重三重のガードを
"脆弱性の関連情報をフォロー"、"パッチは必ず適用"、"できる限り早期に手を打つ"、といった基本的な対策の他に、関連サービスの導入やシステムの増強も考えてみましょう。例えば、Webサイトの脆弱性の有無を専門家が精査する「脆弱性スキャン」は、定期的なサイトの健康診断として欠かせません。
Webアプリケーションのレベルで不正アクセスをブロックする「WAF(Web Application Firewall)」も、いつ、どこから、どのような手段でやってくるか分からない攻撃に対して有効に機能するはずです。またWAFは、動作検証に時間が必要などの理由で、修正プログラムの適用が直ぐにはできないケースのソリューションとしても、多くの企業に活用されています。
運用体制の見直しやシステム面の強化も含め、皆様の企業システムの状況に応じた対策を講ずるようにしてください。
関連コラムのご案内
Webサイトへのサイバー攻撃の種類については、以下の記事でも詳しく解説しております。