Web Application Firewall(WAF)

WAFはWebアプリケーションとインターネット間に盾を作り、この盾が多くのよくある攻撃の軽減に役立ちます。

Share facebook icon linkedin icon twitter icon email icon

WAF

学習目的

この記事を読み終えると、以下のことができます。

  • Web Application Firewallの定義
  • WAFにおけるブラックリスト方式とホワイトリスト方式の違いの説明
  • ネットワークベース、ホストベース、クラウドベースのWAFのメリットとデメリットの理解

Web Application Firewall(WAF)とは?

WAF、つまりWeb Application Firewallは、Webアプリケーションとインターネット間におけるHTTPをフィルタリング、監視することでWebアプリケーションの保護を助けるものです。 通常WAFは、特にクロスサイトリクエストフォージェリ(CSRF)クロスサイトスクリプティング(XSS)、ファイル取り込み、SQLインジェクションなどの攻撃からWebアプリケーションを保護します。WAFは(OSIモデルの)第7層を守るプロトコルであり、あらゆる種類の攻撃を防御するようにはできていません。この攻撃軽減方法は通常、さまざまな攻撃ベクトルに対する相対的防御を作り上げる一連のツールの一部です。


WAFをWebアプリケーションの前にリリースすることで、Webアプリケーションとインターネットの間に盾を配置することになります。プロキシサーバーは仲介を利用してクライアントマシンのIDを保護しますが、WAFはリバースプロキシの一種であり、クライアントがサーバーに到達する前にWAFを経由させることでサーバーの公開を防ぎます。


WAFはポリシーと呼ばれることの多い、ルールを利用して動作します。このポリシーは、悪意のあるトラフィックを除外することでアプリケーションの脆弱性から守ろうとします。 WAFの価値はポリシーの変更を迅速かつ簡単に実装できる点にあります。これによってさまざまな攻撃ベクトルにより迅速に対応できるのです。DDoS攻撃中にWAFポリシーを変更することでレート制限をすぐに実装することもできます。

WAFの仕組み

WAFにおけるブラックリスト方式とホワイトリスト方式の違いとは?

ブラックリスト方式(ネガティブセキュリティモデル)に基づいて動作するWAFは、既知の攻撃から保護します。ブラックリスト方式のWAFは、ドレスコードを満たしていないゲストの入場を拒否するように指示されたクラブの警備員と考えてください。逆に、ホワイトリスト方式(ポジティブセキュリティモデル)に基づいたWAFは事前に承認したトラフィックのみを承認します。これは限定パーティーの警備員のようなもので、警備員はリストに載っている人だけ入場を許可します。ブラックリストにもホワイトリストにもメリットとデメリットがあり、このため多くのWAFがハイブリッドセキュリティモデル、つまり両方を実装したものを提供しています。

ネットワークベース、ホストベース、クラウドベースのWAFとは?

WAFはこの3つの方法のうち1つで実装することができますが、それぞれにメリットとデメリットがあります。

  • ネットワークベースのWAFは通常、ハードウェアベースです。ローカルでインストールされるためレイテンシーは最小ですが、ネットワークベースのWAFは最も値段が高く、ストレージや物理機器のメンテナンスも必要です。
  • ホストベースのWAFはアプリケーションのソフトウェアに完全統合することができます。このソリューションはネットワークベースのWAFよりも安価で、より高いカスタマイズ性が提供されます。ホストベースWAFのデメリットはローカルサーバーリソースの消費、実装の複雑性、メンテナンス費用です。こういったコンポーネントには通常、開発時間が必要となり費用がかかります。
  • クラウドベースのWAFは実装が非常に簡単で手頃な選択肢です。通常はDNSを変更してトラフィックをリダイレクトするだけの簡単なターンキー方式のインストールで提供されます。また、クラウドベースのWAFではユーザーがサービスとしてのセキュリティに対して月または年ごとに支払いを行うため、初期費用が最小限です。このソリューションは最新の驚異に対する保護ができるよう、ユーザー側に追加の作業や費用が発生することなく継続的にアップデートされます。クラウドベースのWAFの欠点は、ユーザーがサードパーティに責任を引き渡すことです。このためWAFの一部の機能がユーザーにとってブラックボックスになる可能性があります。CloudflareのクラウドベースWAFソリューションについて詳しくご確認ください。