WAFとは?Webサイトを守る仕組みと導入メリットをわかりやすく解説
WAFは「Web Application Firewall」の略で、Webアプリケーション向けのセキュリティ対策の一つです。Firewallは直訳すると防火壁となるのですが、今日ではコンピュータネットワーク上での外部からの侵入を制御する機器、ソフトウェアを指すことが多いでしょう。WAFの場合もこのイメージの延長線上に利用される言葉で、Webアプリケーションを外部の攻撃から守ります。
目次
Webシステムは幅広く利用されているITの形態です。ブラウザ等からインターネットを経由してデータのやり取りを行います。
これらのWebシステムは、クライアント(端末)とサーバーにより構成されています。一般にPCやスマートフォンなどのクライアント端末については、セキュリティソフトの導入などのセキュリティ対策が必要となることは広く知られています。一方で、サーバー側にもセキュリティ対策は必要です。サーバーはインターネットを通じて外部に接続されており、これは各種のサイバー攻撃の危険にさらされている事でもあります。特にWebシステムには、WAFを導入してサーバーおよびシステムを保護することは必須です。
本記事ではWAFについて、概要から必要とされる背景、仕組み、種類、機能、防げる攻撃と防げない攻撃について紹介します。Webシステムのセキュリティ対策担当者におすすめの記事です。
WAFとは
WAFは「Web Application Firewall」の略で、Webアプリケーション向けのセキュリティ対策の一つです。Firewallは直訳すると防火壁となるのですが、今日ではコンピュータネットワーク上での外部からの侵入を制御する機器、ソフトウェアを指すことが多いでしょう。WAFの場合もこのイメージの延長線上に利用される言葉で、Webアプリケーションを外部の攻撃から守ります。
WAFはWebアプリケーションを、アプリケーションの脆弱性を突いた外部からの攻撃から守るソフトウェアもしくはハードウェアです。外部とWebアプリケーション間の通信を検査し、問題のあるパターンを検出することで問題を検知します。問題のある通信を検知した場合には、通信の遮断などを行い、Webアプリケーションを外部の攻撃から守ります。
WAFの広まった背景や必要性
企業や組織がWebサイト・サービスを所有し運営していることは一般的なレベルまで普及しています。特にホームページや代表的なサービスは企業・組織の顔そのものと認識されがちです。対外的な信頼性の構築にも大きく貢献しており、ビジネスの根幹であったり、業務運営上で欠かせないものの場合も多いでしょう。
これらの事情からWebサイト、Webアプリケーションの重要性の高さは広く認識されるようになりました。しかし、これはサイバー犯罪者にとっても有効な攻撃先が、常にインターネット上に提供されている事も意味しています。また、IT技術は進歩し続けています。Webアプリケーションが開発された時点では存在していなかった脆弱性が、後から生まれてくることは避けようがありません。
Webアプリケーションの停止や情報の流出は経営上のリスクでもあります。このリスクに対する施策としてWAFは活用が進みました。また、WAFの特徴として、Webアプリケーションの外部に設置できることが挙げられます。Webアプリケーションそのものは改修せずに導入できる仕組みである点も、利用へのハードルが低く普及が進んだ理由の一つです。
WAFの仕組み
WAFを利用して各種の端末からのアクセスを制御するには、二つの方式があります。本項では、その概要を紹介します。
ブラックリスト型
アクセスを制限したい端末(のアドレス等)を指定する方式です。指定した端末のアクセスを制御でき、それ以外はアクセス可能です。
ホワイトリスト型
アクセスの制御を許可する端末(のアドレス等)を指定する方式です。ホワイトリストで指定された端末のみがアクセス可能です。グループなどでの指定も可能で、利用者が限られる場合に便利です。
WAFの種類
WAFという機能を提供している形態として、下記の3種が挙げられます。
ソフトウェア型
WebサーバーにソフトウェアとしてWAFをインストールする形式です。新たな機器の導入が不要なため、初期費用が安くすむメリットがあります。
アプライアンス型
専用の機器を導入し、Webサーバーの前に機器を通してアクセスする形式です。Webサーバーに変更を加えずに利用できる点がメリットの一つです。
クラウド型
WAFはクラウドサービスとしても提供されています。クラウド上のソフトウェアがWebアプリケーションとクライアントとのやり取りを監視する方式です。機器やソフトウェアの購入が不要で初期投資が少なくて済むメリットがあります。継続的に利用する場合には、月額料金が発生する形式が一般的なため、運用コストも考慮して導入する必要があります。
WAFの機能
WAFは製品により提供している機能は異なります。その中でも代表的かつ一般的な機能を紹介します。
通信の許可・拒否
外部からのWebアプリケーションへのアクセスの許可・拒否は一般的なWAFの機能の一つです。ホワイトリスト型は許可、ブラックリスト型は拒否する通信先を設定することができます。
通信監視、制御機能
Webアプリケーションと外部との通信を監視し、不審なパターンの通信が行われていないかチェックを行います。不審な通信が検出された場合には、通信のブロックを行う機能を提供しているWAFもあります。
シグネチャの自動更新
先の通信の監視機能について、不審な通信を検出するためには不審な通信のパターンをWAFが認識している必要があります。WAFの導入時にそれまでの不審なパターンは登録されていますが、以降に発見された不正な通信パターンについては随時最新化する機能が必要となります。
Cookieの保護
WAFの中にはブラウザとWebサーバー間で利用されるCookieを保護する機能を提供しているものもあります。Cookieの暗号化などを行い、改ざんや悪用を防ぎます。
ログ・レポート機能
Webアプリケーションへのアクセスを記録し、ログとして管理・出力する機能です。いつ、どこから、どのようなアクセスがあったのかを収集します。
WAFによっては、ログをまとめレポートとして出力する機能も持ちます。
WAFを導入するメリット
WAFには、Webアプリケーションを安全に運用するための多くのメリットがあります。ここでは、WAFを導入することで得られる主な利点を紹介します。
- Webアプリケーションへの攻撃を防御できる
- セキュリティ対策の迅速な反映が可能
- ログによる可視化と監視
- ゼロデイ攻撃への一定の対応力
- DDoS攻撃への対策機能との連携
- 複数サイト・クラウド環境への対応
- セキュリティ対策の補完として有効
Webアプリケーションへの攻撃を防御できる
WAF(Web Application Firewall)は、Webアプリケーションに対する攻撃を検知し、遮断する仕組みです。具体的には、SQLインジェクション、クロスサイトスクリプティング(XSS)、クロスサイトリクエストフォージェリ(CSRF)など、Web特有の脆弱性を悪用した攻撃に対応できます。これにより、アプリケーションや顧客データを保護することが可能になります。
セキュリティ対策の迅速な反映が可能
脆弱性が見つかっても、WAFのルールを変更することで即座に防御策を導入できます。アプリケーション自体を修正する前の「暫定対応」として非常に有効です。また、定期的に新しい脅威への対策ルールが提供されるため、常に最新の状態を維持しやすいという利点もあります。
ログによる可視化と監視
WAFにはアクセスログや攻撃ログの記録機能があります。これにより、どのような攻撃が行われたかを可視化し、将来的なセキュリティ強化やインシデント対応に活用することができます。不正アクセスの兆候をいち早く察知するためにも有効です。
ゼロデイ攻撃への一定の対応力
最新のWAFはAIや機械学習を活用した異常検知機能を備えているものもあり、未知の攻撃(ゼロデイ攻撃)にも一定の対応が可能です。これにより、従来のシグネチャベースの検知だけでなく、挙動分析による柔軟な対策が期待できます。
➡ゼロデイ攻撃とは?主な手口や被害事例、対策と受けた際の対処法を解説
DDoS攻撃への対策機能との連携
WAF製品の中には、DDoS攻撃の検知や緩和機能を持つものもあります。大量のリクエストによるサービス妨害を防ぐために、レート制限やキャッシュ活用、チャレンジレスポンスといった仕組みを併用することで、サービスの可用性を保つことができます。
➡DDoS攻撃とは?受けた場合の被害や4つの対策をわかりやすく解説
複数サイト・クラウド環境への対応
SaaS型・クラウド型のWAFであれば、複数のWebサイトやマルチクラウド環境でも一元的なセキュリティ管理が可能です。物理的な設置やサーバー設定が不要なため、運用負荷も抑えられます。
セキュリティ対策の補完として有効
WAFは単独で万能なセキュリティ対策ではありませんが、他の対策(IPS/IDS、エンドポイントセキュリティなど)と組み合わせることで、多層防御を実現できます。万一のリスクを軽減する意味でも、WAFは重要な役割を果たします。
WAFで防げる攻撃・防げない攻撃
WAFはWebアプリケーションを守るセキュリティソリューションです。注意しておきたいのは、全てのサイバー攻撃に有効なのではなく、防げる攻撃と防げない攻撃があることでしょう。適切に他のセキュリティソリューションと組み合わせて利用することで、必要なセキュリティ性能を確保しましょう。
防げる攻撃
SQLインジェクション
Webサイトへの入力を通して、Webアプリケーション内のデータベースへのアクセス(SQL)において想定外の動作をさせる攻撃です。WAFでWebの入力をチェックすることにより防ぐことが可能です。
OSコマンドインジェクション
Webサイトからの入力を通して、Webアプリケーション内からOSへのコマンド発行において想定外の動作をさせる攻撃です。WAFでWebの入力をチェックすることにより防ぐことができる攻撃です。
クロスサイトスクリプティング
クロスサイトスクリプティングはWebアプリケーションを改ざんし、他サイトへの遷移、情報の取得などを図る攻撃です。WAFがWebアプリケーションを保護していれば改ざんができないため、防ぐことができます。
DoS/DDoS攻撃
Dos/DDoS攻撃はWebアプリケーションに対し、アクセスを集中させることでサーバーの動作に悪影響を与える攻撃です。WAFにより集中して行われている特定箇所からのアクセスを遮断することで防ぐことができます。
バッファオーバーフローを狙った大量データ送信
バッファオーバーフローはWebの入力から大量のデータを送信し、Webアプリケーション内のメモリ制御を失敗させる攻撃です。WAFでWebの入力をチェックすることにより防ぐことができます。
ブルートフォースアタック
ブルートフォースアタック(総当たり攻撃)はWebアプリケーションのパスワードなどに、総当たりで入力を行う攻撃です。WAFにより特定箇所からのアクセスを遮断することで防ぐことができます。
ディレクトリトラバーサル
ディレクトリトラバーサルはWebサーバーのディレクトリを遡り非公開のファイルにアクセスを試みる攻撃です。WAFにより不正なアクセスを検知し、遮断することで防げます。
防げない攻撃
ネットワーク経由の攻撃
ネットワークを通してコンピュータネットワーク、サーバーへの侵入を試みる攻撃です。Webアプリケーションを守るWAFでは防ぐことができません。
OS・ミドルウェアなどへのアクセスによる攻撃
ネットワークを介して、OS・ミドルウェアにアクセスし悪意ある操作をする攻撃です。Webアプリケーションを守るWAFでは防ぐことができません。
botによる不正アクセスなど
botというプログラムにより繰り返される不正アクセスです。単純なアクセスの繰り返しで、アクセスそのものは問題のないものであり、WAFで防御する対象にはなりません。一定量以上のアクセスが集中していれば遮断するなど、一部は対処が可能です。
まとめ
Webアプリケーションは外部からの攻撃にさらされており、セキュリティリスクを持っています。特にWebサーバーでは機密情報や個人情報を扱うことが多く、なおさらセキュリティ対策が必要です。高精度なセキュリティ対策が求められており、そのための施策としてWAFは有効です。


