WAFはウェブアプリケーションを外部からの攻撃、攻撃による情報漏えいのリスクを低減させることを目的にしたセキュリティ機能を提供します。

具体的にはSQLインジェクション攻撃、コマンドインジェクション攻撃のようにHTTPリクエストを細工してアプリケーションが本来想定していない値によりウェブシステムが意図しない動作をさせ、最終的にマルウェアなど攻撃プログラムをサイトに埋め込んだり、ウェブシステム上の情報を搾取します。

IPS/IDSはOSやミドルウェアなどを中心に保護しますが、WAFはその上で開発されたウェブアプリケーションを保護します。対応する脆弱性が異なることが大きな違いになります。WAFはウェブ開発者がPHP、Ruby、JSP、ASPなどサーバサイドのプログラムからJava scriptを中心とするクライアントサイドのプログラムにおけるバグ、SQLなどのデータベースの設計からアクセスするプログラムのバグを突く攻撃(Exploit)を検知し防御します。

また、プログラムのミスでウェブサイトに表示させたくない情報をあらかじめ設定することで情報漏えいのリスクを低減させることができます。