Webアプリケーションファイアウォール(WAF)は、Web対応アプリケーションの前にあって悪質な各種攻撃を検出し、それらを防御するハードウェアアプライアンス、仮想アプライアンス、またはクラウドベースのサービスを指します。WAFはWebアプリケーションのトラフィック(HTTP/S)に焦点を当て、ネットワーク上でインターネットに接続する部分にあるアプリケーションを防御します。
WAFは、振る舞いアルゴリズム(機械学習やポジティブセキュリティモデル)、またはネガティブセキュリティモデルなど多くの技術を用いて、アプリケーションへのトラフィックを許可すべきか、あるいはブロックすべきかを判断します。
WAFはスタンドアロンのツールから、完全に統合されたWeb Application and API Protection(WAAP)サービスへと移行しつつあります。これには、APIの防御、ボット管理および防御機能、アプリケーションレイヤ7 DDoS防御、Webアプリケーションセキュリティなどのサービスが含まれます。
ランタイムアプリケーション自己保護(RASP)は、個別のアプリケーションをリアルタイムで防御するエージェントまたはリンクされたライブラリです。RASPツールおよびライブラリはアプリケーションの一部となり、アプリケーションランタイムの一部として実行されなければなりません。このため、アプリケーション初期化のオーバーヘッドやのパフォーマンスに影響が及びます。
多くの組織にとって、従来のWAFからWAAPへ移行し、RASPによるアプリケーションセキュリティ体制の増強を図ることが、ベストプラクティスとして推奨されます。これにより、RASPを使用して特定の脅威から個別のアプリケーションを防御しながら、WAFまたはWAAPを用いてWeb対応アプリケーションを保護することができます。
一般的に、WAF/WAAPはサイバー脅威がアプリケーションに到達する前の一次防御として機能します。RASPとアプリケーションコーディングは、サイバー脅威がアプリケーションに到達するとアプリケーションを防御します。
WAFまたはWAAPの開発方法や機能によっては、RASP機能の大部分が含まれていたり、RASPライブラリそのものを使用したりする場合もあります。
比較表:WAFとRASP
|
WAF |
RASP |
対象 |
Webアプリケーション |
個別のアプリケーション |
仕組み |
APIおよびアプリケーションへのトラフィックのインラインまたはアウトオブパスのトラフィックスキャン |
アプリケーション内からのリアルタイムのトラフィック |
防御 |
多くのWebアプリケーションにおける振る舞い防御および静的防御 |
入力データのヒューリスティックおよび静的なチェック |
実装 |
ハイブリッドトポロジーでスタンドアロン |
防御対象アプリケーションと同じ場所、またはそれにリンクされたライブラリとして |
可視性とログ |
すべてのアプリケーション |
特定のアプリケーション |
その他のリソース