誤検知に気をつけよう

2015年12月8日by 林正人

前回までのブログ記事では、ビジネスブログとしていかにビジネスを守る為にウェブアプリケーションを保護する必要があるか、そしてWAFがそのウェブアプリケーションの保護にどのように役に立つかという点をご説明しました。テクニカルブログでは、もう少し技術的な視点でWAFの導入についてご説明したいと思います。今回のタイトルにもつけた通り、誤検知というのがセキュリティソリューションを導入する際の課題の一つですが、WAFの導入に関しても同様です。今回のブログではそのような導入の技術的な課題、考慮点にフォーカスして具体的にどのような検討をすべきかをご説明します。

1.ネットワーク構成の変更

前回のブログ記事でもご紹介した通り、WAFには複数の提供形態がありますが、どの形態のWAF を導入した場合も、ネットワーク構成やネットワーク各種機器の設定の変更が必要です。

WAF導入前にはインターネットからの通信は、(ファイアウォールを経由しても)通信は素通りするだけなのでネットワーク構成に影響は有りません。(図1参照)

図1 WAF導入前のネットワーク構成イメージ

しかし、図2にあるようにWAFをプロキシサーバのように設定をする場合には、インターネットを介して到着した通信はWAFに一旦着地して、その後ウェブサーバに再送されます。そのため従来のネットワークのままでは正常に通信できなくなることがあります。ウェブサーバにとって通信の送信元はWAFとなるので、従来のやり方ではインターネットの先にある本当の送信元アドレスが分からなくなってしまいます (この課題と解決の方法については次回のブログで詳細に説明します)。具体的には、ファイアウォールの送信元IPアドレスでアクセス制限をしていたり、送信元IPアドレスを通信制御に利用している場合に注意が必要です。

図2 WAF導入後のネットワーク構成イメージ(プロキシ型)

2.ウェブアプリケーションへの影響確認と調整

原因は上記と同じ理由ですが、送信元IP アドレスを利用しウェブアプリケーションなどで以下のような処理や表示を行っている場合はご注意ください。また、それ以外にも、WAFの製品・サービスに依存した制限事項がありますので、導入製品が示す注意事項を確認の上、検証を行うことが重要です。

  • アクセス解析
  • ソース元 IPアドレスを利用したウェブアプリケーション(IP ジオロケーションなど)の動作

3.ウェブサイトのトラフィック増大を見据えた機器・サービス選定

ウェブサイトへの流入が増えた(または増えることが見込まれる)場合、それに合わせ、WAF 自体の処理能力も向上させる事が必須となります。このような場合、スムーズに処理能力を向上させる方法及び、その際のコストをあらかじめ把握しておく必要があります(投資が無駄になるので、将来を見据えたスケールアップ・ダウンの考慮も必要となります)。

4. ブラックリストの利用/ ホワイトリストの作成

WAFには、ブラックリストとホワイトリストという2つの防御手法があります。ブラックリストと呼ばれるのは明らかに攻撃と知られている通信パターンを止める手法で、多くはWAFのベンダーからシグネチャが提供されます。ホワイトリストはそれに対してウェブサイトが受け付けて良い通信を定義する手法で、許容されない通信はアクセスを許可されないので悪意を持った攻撃は接続が出来ないことになります。
そのため、両方を設定したほうがセキュリティレベルは上がりますが、ホワイトリストは一度設定を行ったウェブサイトに追加開発が発生する度に、WAF の設定も調整する必要があります。追加開発毎に一からシグネチャを見直す必要が出てくるケースもありますので、実際に運用する際は、開発環境にもWAF を導入し、ホワイトリストの修正と動作確認をしてください。
また、新たなブラックリストの提供スピードや適用のしやすさという観点もWAFを選択する際に重要な条件になります。例えば、ウェブアプリケーション側で対応が難しい新たな脆弱性が発見された場合にも、WAFで素早くシグネチャが供給されればその対策はすぐに行えます。その場合、そのシグネチャの適用の判断を利用者、もしくは運用業者側でできるかというのも重要です。
特定のOSの脆弱性を狙った攻撃であれば、そのOSを利用していなければ心配することは有りませんが、サーバが利用している暗号スイートの脆弱性が見つかった場合はその情報の入手がきちんとできるか定かでないだけでなく、サーバの設定を外部業者に任せている場合などは利用の有無さえ判断に苦しむ場面があるかと思います。またシグネチャがWAFベンダーから提供された場合も、どのような条件で止めるものか分かりやすく、すぐに自社のサイトに適用しても問題ないことを判断できる必要があります。

5. 正常通信の誤検知とシグネチャ調整

そして今回のブログのテーマにもなっている誤検知は、導入時に特に気を遣う部分です。WAFは通信の内容を読み解き、機械的にシグネチャに合致するパターンや内容を見つけブロックをするものです (WAFの製品によって多少ブロックの手法に違いはあります)。機械的に動作するが故に、正常な通信の内容であっても、偶然でも一致すれば正常通信を遮断するという事は起り得ます。これを、誤検知と言いますが、これが起きてしまうと正規のユーザが利用できないという事になります。その反対に、シグネチャの設定を外してしまうと誤検知は起りませんが、攻撃もすり抜けてしまいます。その為、シグネチャを各ウェブサイトにちょうど良いセキュリティ強度に調整する(チューニング)ことが必要です。そして、この作業を自社で実施することができるか、外部の専門業者に依頼して行ってもらうかがWAFの導入と運用の要点になります(外部の業者に依頼をしていても、ウェブが止まった場合のリスクを考慮して、最終判断を導入企業に判断を任されることもあります)。

まとめ

WAFの導入においては上記以外にも製品やサービスに依存したさまざまの注意点があり、それらを比較して自社に最適なWAFを選択することが必要です。その中でも、今回テーマに挙げた誤検知はWAF導入と運用を行う上で非常に重要です。誤検知を避けるために遮断条件を緩めすぎるとセキュリティが甘くなるため、誰かが常にきちんと調整を行う必要があります。近年、クラウド型、マネージド型のWAFが急激に市場を広げているのは、チューニングの外部委託が好まれていることの表れと考えられます。WAF導入には、自社でやるにせよ外部委託するにせよ、誰かがきちんと運用を行う必要があることを考慮に入れ、検証を行う際に選択するWAFが自社のリソースで運用ができるものかどうかを判断してください。

関連リンク
※シマンテック クラウド型WAFについては、以下のサイトよりお問い合わせください。
シマンテック クラウド型WAF