最終更新日:2021-03-19
Webサイトの防御のためにWAFはそろそろ入れないとまずいかな、簡単に入れる方法がないかなという方へ、WAFについて基本的な仕組みから、安価に手軽に導入できる方法までをご紹介します。
WAFとは、Webアプリケーションファイアウォール(Web Application Firewall)の略称であり、Webアプリケーションのファイアウォールという名の通り、Webアプリケーション・OS・ミドルウェアの脆弱性を狙った攻撃を検知し、遮断するサービスです。
Webアプリケーションの脆弱性対策としては、Webアプリケーションの開発時に主要な悪意ある攻撃を想定して対策を施しますが、攻撃手法が日々進化する中、完全かつ完璧に網羅するのも容易ではありませんので、防御手段としてWAFを活用することが増えています。
最近増えているのがクラウド型WAFです。インストール型のWAFであれば、WAF専用のサーバーを用意、あるいはWebサーバーに同居するかたちにしてインストールして利用することになりますが、WAFのインストールや運用管理は大きな手間になります。
一方、クラウド型はあらかじめ設定されているものを、防御したいサーバーの前におけるようにDNSを設定する程度だし、ソフトウェアのアップデートやサーバー管理等の作業はクラウド提供者側で行うので手軽です。
運用負荷をできるだけ抑えたいという場合はクラウド型WAFが大きな選択肢になります。
サイバー攻撃には主に以下のような攻撃があります。その中で、WAFはWebアプリケーションへの攻撃である、「SQLインジェクション」、「OSコマンドインジェクション」、「クロスサイトスクリプティング」、「ゼロデイ攻撃」、「ブルートフォースアタック」、「パスワードリストアタック」等の攻撃を防ぎます。
攻撃手法が一口に「SQLインジェクション」や「OSコマンドインジェクション」といっても、Webアプリケーションの脆弱性のどこを狙っているか、どのような攻撃をしているかは様々です。
そこで、WAFでは攻撃手法に対して、不正な通信・不正な攻撃のパターンをまとめた定義ファイルである「シグネチャ」を用いて、防御を行います。動作としては、ウィルス対策ソフトウェアのパターンファイルと同様で、既に知っている攻撃手法に対する防御方法が用意されており、該当攻撃が行われると、その通信の遮断等を行うとともに、アラート通知が行われます。
もちろん、日々新たな攻撃方法が生まれますので、シグネチャを継続的に更新し続ける必要があります。そのため、WAFの選び方で重要なのは、最新のシグネチャが作成されるタイミング・頻度や、その精度です。
WAFはWebアプリケーションの防御向けなので、Webアプリケーションの前に設置する必要があります。ただし、物理的に近くに置く必要はなく、守りたいWebサイトのURLをWAFのサーバーにして、WAFで通信をチェックした上で、WAFからWebサイトのサーバーにつなげるかたちになります。そのため、インターネット上のWebサイトにおいては、クラウドWAFを用いて防御できるようになります。
攻撃の防御として重要なファイアウォールは、防御できる範囲が異なるので、併用して利用することになります。ファイアウォールは、IPアドレスやポートを見て通信を許可するか決め、不正侵入検知システムであるIDS/IPS*は、OSやWebサーバー等の脆弱性を狙った攻撃を防ぐのが中心であり、Webアプリケーションの動作までは見ていません。WAFは、Webアプリケーションの防御専門のため、ファイアウォールやIDS/IPSと併用して利用することになります。
* IDS(Intrusion Detection System)は不正侵入検知システム、IPS(Intrusion Prevention System)は不正侵入防止システムであり、IPSは検知だけなのに対して、防御まで行うのがIPSです。
個人情報や決済情報などの重要な情報をWebで扱う際には、WAFはほぼ必須と言えます。
Webアプリケーションで攻撃を想定して防御できればよいのですが、網羅的に防御対策考え、アプリケーションに実装するのは時間もコストもかかります。そのため、Webアプリケーションの脆弱性対策は行いつつも、WAFでさらに安全を確保することがおすすめです。
法人向けのWebサービスの場合、各社のセキュリティ・ポリシーに合致したサービスであるか、セキュリティ・チェックリストで確認を受ける場合があります。その中に、WAFを用いた対策が行われているか、という項目があることが多いため、取引先に安心してご利用いただくためにも、WAFを導入していると言えるのは重要です。
正式な運用開始前のセットアップ時のあるあるだと思いますが、WAFを入れたらなぜかWebサイトにつながらない、ということがあります。その要因としては、WAFをWebサイトの前に入れるためのDNSの設定ミスということや、WAFが正常な通信を誤検知してしまい、勝手に通信を止めてしまうこともあります。原因がわかってDNSの設定や、WAFでの通信の除外設定等を行えば解決するのでしょうが、そこに至るまでに時間を費やしてしまうことはあり得ます。
Webサイトへの通信をパケットレベルで解析するので、通信量が増えると、解析が追い付かず、サイトへのアクセスが遅くなる、という事態が想定されます。Webサイトへのアクセススピードは、快適なWebサービスには不可欠なので、WAFがボトルネックにならないようにする必要があります。そのため、定期的に、WAFの負荷をモニタリングするとともに、負荷が高いようであれば、CPUやメモリをアップグレードする等の対策が必要です。
前述の通り、WAFがWebサイトへのアクセスを阻害する可能性があるため、そのような気配がないか日々の負荷率の確認や、攻撃を正しく検知できているか、ログの確認が必要になります。負荷かかる恐れがないのであれば、ある程度そのままでもWAFは運用できますので、必ずしも手間になるとはいえませんが、セキュリティを高めるという観点では、ログの点検や攻撃を検知した場合のアラート内容の確認やそれに基づいた対策の実施等、やるべき作業が発生します。
ある程度予算があるのであれば、導入や運用管理の負荷が高くないクラウド型WAFの利用がおすすめです。
予算がそれほどなく、安価になんとかWAFを利用したいという場合であれば、IaaS等のクラウドサーバーを提供しているサービスの中のWAFが安価です。
アマゾン・ウェブ・サービス(AWS)のWAFである「AWS WAF」は、セットアップがすぐに行え、範囲が小さければ月額数千円からでも利用できる安価なサービスです。
AWSに慣れた方であればそんなに問題ありませんが、AWSやIaaS等に慣れていない方には、セットアップ作業に最低限の知見が必要なのです、少し時間がかかる可能性があります。
なお、WAFの場合はルール設定に苦戦することがありますが、「マネージドルール」という、おすすめの設定が予め作成されているオプションを選ぶのもおすすめです。
WAFの中でも実績あるソフトウェアである「Site Guard」は、WAFを選ぶ際に有力な選択肢になりますが、導入費用が1ライセンスで年間約25万円と、気軽とは言えない可能性があります。
ところが、さくらインターネット社のクラウドサーバーである「さくらのVPS」や「さくらのクラウド」であれば、「SiteGuard Server Edition」に関しては、無料で利用できるようになっています。「さくらのVPS」は、月額1,000円以下からでも利用できるサービスのため、低価格でWAFを利用することができます。
WAFの複雑なルール設定も不要で使い始めることができますので、月額1万円以内でWebサーバーの用意から、WAFの準備まで手軽に行いたいという場合は、有力な選択肢になります。
複数のシステムを運用しており、WAFの設定やログ分析を通じたチューニングが大変、問題発見時の対応が不慣れ、ということであれば、有人監視付のWAFを利用するのも手です。
例えば、「マネージドWAFサービス(セコムトラストシステムズ株式会社)」では、WAFの導入に加えて、24時間365日の有人監視、シグネチャ更新、ポリシーの変更管理、万が一の障害対応や月次レポートなどもセットで提供されています。
少し前まではWAFの導入は必要だけれど高額、というイメージがありましたが、最近ではIaaSのオプションとして安価に導入できることも増えてきました。Webサイトへの攻撃は増え続けている中、WAFによる防御は当たり前、と言われてきている状況のため、最初は手軽なWAFからでも導入して利用してみることをおすすめします。
アスピックご利用のメールアドレスを入力ください。
パスワード再発行手続きのメールをお送りします。
サービスの導入検討状況を教えてください。
ご登録いただいているメールアドレスにダウンロードURLをお送りしています。ご確認ください。