Webアプリケーションファイアウォール(WAF)は、ハードウェアアプライアンス、仮想アプライアンス、またはクラウドベースのサービスであり、Web公開アプリケーションの前に配置されて多様な悪意ある攻撃を検知し保護します。WAFはWebアプリケーションのトラフィック(HTTP/S)に特化しており、ネットワークのインターネット公開ゾーンにあるアプリケーションを保護します。
WAFは、行動アルゴリズム(機械学習やポジティブセキュリティモデル)やネガティブセキュリティモデルなど、さまざまな手法を使用して、トラフィックをアプリケーションに通過させるべきか、ブロックすべきかを判断します。
最後に、WAFは単体ツールから、APIの保護、ボット管理および軽減機能、アプリケーションレイヤー7のDDoS保護、Webアプリケーションセキュリティなど、一連の機能を含む完全統合型のWAAP(Web Application and API Protection)ソリューションへと移行しつつあります。
Runtime Application Self-Protection(RASP)は、個々のアプリケーションをリアルタイムで保護するエージェントまたはリンクされたライブラリです。RASPのツールやライブラリはアプリケーションの一部となり、アプリケーションのランタイムの一部として実行される必要があるため、アプリケーションの初期化オーバーヘッドやパフォーマンスに影響を与えます。
従来のWAFからWAAPへ移行し、RASPによってアプリケーションのセキュリティ態勢を強化することが、ほとんどの組織にとって推奨されるベストプラクティスです。これにより、WAFまたはWAAPでWeb公開型アプリケーション全体を保護しつつ、RASPを使用して個々のアプリケーションを特定の脅威から守ることができます。
通常、WAF/WAAPはサイバー脅威がアプリケーションに到達する前の一次防御として機能します。サイバー脅威がアプリケーションに到達した場合、RASPとアプリケーションのコーディングによってアプリケーションが保護されます。
WAFやWAAPの開発手法や機能によっては、WAFやWAAP自体がRASPの機能の多くを含んでいたり、RASPライブラリを使用していたりする場合もあります。
比較表:WAF vs RASP
| |
WAF |
RASP |
| フォーカス |
Webアプリケーション |
個別のアプリケーション |
| 動作原理 |
APIおよびアプリケーションへのトラフィックに対するインラインまたはアウトオブパスのスキャン |
アプリケーション内部からのリアルタイムトラフィック |
| 保護 |
多くのWebアプリケーションにわたる、行動ベースおよび静的な保護 |
入力データに対するヒューリスティックおよび静的チェック |
| 導入 |
ハイブリッドトポロジにおけるスタンドアロン |
保護対象のアプリケーションと同一ロケーション、またはリンクされたライブラリとして配置 |
| 可観測性とログ |
アプリケーション横断型 |
特定のアプリケーションに対して |
追加リソース