Eine Anwendungs-Firewall ist eine Art von Firewall, die den Verkehr zu, von oder durch eine(r) Anwendung oder einen/einem Dienst regelt.
Anwendungs-Firewalls oder Firewalls auf Anwendungsebene verwenden eine Reihe von konfigurierten Richtlinien, um zu bestimmen, ob die Kommunikation zu oder von einer Anwendung blockiert oder zugelassen werden soll.
Herkömmliche Firewalls kontrollieren den Datenfluss zur und von der CPU und untersuchen jedes Paket, während es durch das Netzwerk fließt. Eine Anwendungs-Firewall geht noch weiter, indem sie die Ausführung von Dateien oder Code durch bestimmte Anwendungen kontrolliert. Auf diese Weise kann ein Eindringling, selbst wenn er Zugang zu einem Netzwerk oder Server erhält, keinen bösartigen Code ausführen.
Anwendungs-Firewalls können aktiv oder passiv sein.
Aktiv – Aktive Anwendungs-Firewalls prüfen aktiv alle eingehenden Anfragen, einschließlich der tatsächlich ausgetauschten Nachricht, auf bekannte Schwachstellen wie SQL-Einschleusungen, Manipulationen von Parametern und Cookies oder Cross-Site-Scripting. Nur Anfragen, die als „sauber“ eingestuft werden, werden an die Anwendung weitergeleitet.
Passiv – Passive Anwendungs-Firewalls verhalten sich ähnlich wie ein Intrusion-Detection-System (IDS), indem sie ebenfalls alle eingehenden Anfragen auf bekannte Schwachstellen überprüfen, aber diese Anfragen nicht aktiv ablehnen, wenn ein potenzieller Angriff entdeckt wird.
Anwendungs-Firewalls können im Allgemeinen aus der Ferne aktualisiert werden, wodurch sie neu entdeckte Schwachstellen verhindern können. Sie sind meist aktueller als spezifischer, sicherheitsorientierter Code, der längere Entwicklungs- und Testzyklen für seine Integration in Anwendungen aufweist.
Heute werden meist Webanwendungs-Firewalls (WAFs) eingesetzt, um den HTTP/S-Verkehr zu und von einer Webanwendung zu filtern, zu überwachen und zu blockieren.