WAFでWebアプリの脆弱性を守れるのか

 2016.12.21 Secure Enterpriseポータル

Webアプリケーションは、企業のシステム環境を構成するコンポーネントの中でも脆弱性が発生しやすく、様々なサイバー攻撃の標的となることが少なくありません。

従って、全てのWebサイト/Webサービス運営企業にとって、Webアプリケーションの脆弱性を考慮したセキュリティ環境は重要な経営課題の一つだと言えます。

そこでWebアプリケーションの脆弱性を保護するにあたり、有効的なセキュリティ製品がWAF(Web Application Firewall)です。

WAFは、ファイアウォールやIPS/IDS(不正通防御/検知システム)といった従来型のセキュリティ製品では保護できない“アプリケーション層の脆弱性”を保護可能なため、Webサイト/Webサービスを狙った多様なサイバー攻撃からWebサイト/Webサービスを防御します。

しかし、果たして本当にWAFでWebアプリケーションの脆弱性を守れるのか?従来型のセキュリティ製品で十分ではないのか?今回はこの点をハッキリとさせつつ、シマンテックが提供する「シマンテック クラウド型WAF」での脆弱性保護について紹介します。

Webアプリケーションの脆弱性発生状況

まずはWebアプリケーションの脆弱性発生状況などについて、いくつかのデータを参照に整理していきます。

Webアプリケーションの脆弱性発生件数に関しては、依然として高い水準をキープし、その深刻性が伺えます。

IPAとJPCERTコーディネーションセンターの四半期レポートによると、2016年第3四半期(7月~9月)の脆弱性届出件数は116件に上り、前年同期比で12.6%上昇しています。

出典:JPCERTコーディネーションセンター「ソフトウェア等の脆弱性関連情報の取扱いに関する届出状況[2016 年第 3 四半期(7 月~9 月)」

そして脆弱性発生件数に対し修正を行ったWebサイトは、78件であり全体の32.7%が脆弱性を放置している状態です。

こうした現状を目の前にしても「うちのWebサイトは大丈夫」と安心してしまっている企業が少なくありませんが、セキュアスカイ・テクノロジー社の調査によると“93%”のWebサイトが何らかの脆弱性を抱えており、うち30%の企業で危険度の高い脆弱性が管理されていません。

また、攻撃者が狙っているのは大企業ばかりではありません。現在では中小企業を狙ったサイバー攻撃が横行しており、全ての企業が情報漏洩などのセキュリティリスクを等しく持っているのです。

Eブック:ウェブサイトセキュリティ脅威レポート 2016

Webアプリケーションで発生しやすい脆弱性

Webアプリケーションではどのような脆弱性が発生しやすいのか?ここでは代表的な5つの脆弱性を解説します。

SQLインジェクション

データベースを持つWebサーバのほとんどは、RDBの制御にSQL文を使用しています。このシステムに脆弱性があると、情報漏洩など重大なセキュリティ事件に繋がる可能性があるので要注意です。

概要としては攻撃者はWebサイト/Webサービスの入力欄に不正文字列を入力し、データベースを不正に操作します。これにより直接的情報搾取や内部ネットワークへの侵入が可能です。

OSコマンドインジェクション

こちらはOS上で使用するコマンドを悪用し、SQLインジェクションのように直接的な情報搾取などを行われてしまう脆弱性です。

また、単に情報搾取されるだけでなく、他Webサイト/Webサービス攻撃の踏み台にされる可能性もあるので要注意です。

クロスサイトスクリプティング

ユーザーの検索結果を返すWebページや、入力フォームにおける確認画面など、動的なWebページで発生しやすい脆弱性です。

Webページは基本的にHTMLによって生成されますが、入力データを処理するプログラムに脆弱性があるとこれをタグ(命令)として認識してしまうことがあり、攻撃者はこの脆弱性を突いてWebページに不正スクリプトを埋め込みます。

これにより架空の入力フォームを設置して個人情報を搾取したり、正規ユーザーになりすますことが可能です。

パラメータ改ざん

パラメータ改ざんとはURLパラメータ、hiddenフィールド、Cookie情報といったパラメータを不正改ざんすること、Webサイト/Webサービスの様々なデータを任意のものに置き替えてしまうという脆弱性です。

例えばECサイトならば、価格情報を改ざんし正規価格よりも安く購入されてしまうなどの被害が想定されます。

Apache Struts2の脆弱性

Apache Struts2とは、Webアプリケーションのフレームワークとして広く使用されているオープンソースソフトウェアです。

定期的に危険度の高い脆弱性が発見されているため、強固な対策が求められます。

Webアプリケーションで発生する脆弱性が、上記以外にもまだまだ存在します。しかし、それらすべての脆弱性を独自にカバーすることは簡単ではありません。

定期的な診断と、脆弱性を発見した際の改修が必要になるため、運用負荷の増大は避けられないでしょう。

WAFは脆弱性をどうカバーするのか?

ここでWAFがどのように脆弱性をカバーするのかについて解説すると、主に2つの方式でWebアプリケーションの脆弱性を保護します。

1つはブラックリスト方式。これは特定の不正通信パターンや攻撃手法をまとめてファイル(シグネチャ)を基準にして、Webアプリケーションの脆弱性を狙った攻撃を検知/防御します。

そしてもう1つはホワイトリスト方式。こちらは反対に、特定の通信パターンのみを許可し、それ以外の通信を全てブロックするという方式です。

ブラックリスト方式とホワイトリスト方式はどちらも一長一短があるので、総合的視点からどちらを採用するか検討しなければなりません。

では実際にWAFで脆弱性をカバーできるかという話ですが、むしろWebアプリケーションの脆弱性を保護できるセキュリティ製品は、WAFを置いて他にないというのが現状です。

そして需要なのが、ブラックリスト方式に用いるシグネチャの信頼性です。

WAF導入では多くの企業が、柔軟な構成が可能なブラックリスト方式を採用しています。そして、ブラックリスト方式の検知精度やシグネチャに大きく依存しているため。信頼性の高い製品を選ぶことが重要なのです、

「シマンテック クラウド型WAF」で行う脆弱性保護

ブラックリスト方式を採用している「シマンテック クラウド型WAF」では、年間100回以上のアップデートで常に最新のシグネチャを保ち、高いセキュリティ性の維持を実現しています。

アップデートはユーザー企業が個別対応する必要はなく、全ての自動で行われるので日々の運用を効率化可能です。

また、「シマンテック クラウド型WAF」では定期的な脆弱性診断を行う“脆弱性アセスメント“などの無償サービスも提供しているので、自社Webサイト/Webサービスの脆弱性をタイムリーに把握することができます。

ホワイトペーパー:公開ウェブサイトに安心感を! 脆弱性診断のススメ

まとめ

最後に念を押しますが、Webアプリケーションの脆弱性からWebサイト/Webサービスを総合的に守れるのはWAFのみです。

ファイアウォールやIPS/IDSといったセキュリティ製品では、全ての対応することはできません。

まだWAFを導入していないという企業は、Webアプリケーションの脆弱性を放置している状態かもしれません。

まずは「シマンテック クラウド型WAF」の脆弱性アセスメントをご利用いただき、Webサイト/Webサービスの現状を知ることから初めてみてはいかがでしょうか。