Web Application Firewall

Aus Foxwiki

Eine Web Application Firewall (WAF) schützt Webanwendungen vor Angriffen über das Hypertext Transfer Protocol

Beschreibung[Bearbeiten | Quelltext bearbeiten]

Eine Web Application Firewall (WAF) oder Web Shield ist ein Verfahren, das Webanwendungen vor Angriffen über das Hypertext Transfer Protocol (HTTP) schützen soll

Gegenüber klassischen Firewalls und Intrusion-Detection-Systemen (IDS) untersucht eine WAF die Kommunikation auf der Anwendungsebene

  • Dazu ist normalerweise keine Änderung an der zu schützenden Web-Anwendung nötig

Schutz[Bearbeiten | Quelltext bearbeiten]

Angriffe, vor denen eine WAF Schutz bieten soll
  • "Injection"-Angriffe
    • SQL Injection
    • Command Injection
    • LDAP Injection
    • Skript Injection
    • XPath Injection
  • Cross-Site Scripting (XSS)
  • Hidden Field Tampering
  • Parameter Tampering
  • Cookie Poisoning
  • Pufferüberlauf­angriffe
  • Forceful Browsing
  • Unberechtigter Zugriff auf Web-Server
  • Bestimmte bekannte Verwundbarkeiten von Web-Anwendungen

Funktionsweise[Bearbeiten | Quelltext bearbeiten]

Die WAF untersucht alle eingehenden Anfragen und die Antworten des Web-Servers

  • Bei verdächtigen Inhalten wird der Zugriff unterbunden
  • Zur Klassifizierung gefährlicher oder verbotener Aktionen wird häufig in einer vorgeschalteten Lernphase ein Application Security Scanner eingesetzt
  • Dieser analysiert, oft im Dialog mit einem Nutzer, die Anwendung und erzeugt daraus Profile für zulässige Aktionen
  • Alternativ werden durch eine Art Crawler oder auch Application Security Scanner die Webseiten der Webapplikation angesteuert und enthaltene Formularfelder durchprobiert
  • Die Applikation läuft in dem Fall in einer Art passivem Modus, das heißt, erlaubte und nicht erlaubte Eingaben werden in einer Logdatei festgehalten
  • Der Administrator kann anhand der Logdatei sehen, welche Aktionen in einem scharfen Betrieb blockiert würden, und kann diese bei Bedarf selektiv freischalten, indem er Sonderregeln einrichtet
  • Die konkreten Verfahren variieren von Anbieter zu Anbieter

Sind beispielsweise zwei Parameter für ein untersuchtes Formular definiert, kann die WAF alle Requests blockieren, die drei oder mehr Parameter enthalten

  • Ebenso kann die Länge und der Inhalt der Parameter geprüft werden
  • Durch die Spezifikation allgemeiner Regeln über die Parameter-Beschaffenheit, z. B. der maximalen Länge und des erlaubten Wertebereichs, können Angriffe verhindert oder für den Angreifer erschwert werden

Arten[Bearbeiten | Quelltext bearbeiten]

Es werden folgende Arten aufgrund ihrer Position in der Netzwerk- und Servertopologie unterschieden:

  • Reverse Proxy
  • Appliance
  • direkt im Webserver integriert (z. B. Hiawatha)
  • Plugin für Webserver
  • Passives Device (IDS)

Durch seine zentrale Position ist eine WAF ein idealer Kandidat, um – ähnlich wie bei einer Firewall – alle Anforderungen ("requests") an eine Applikation zu untersuchen und gegebenenfalls zu korrigieren oder zu verwerfen

Vorteile[Bearbeiten | Quelltext bearbeiten]

  • Mehrere Ebenen des Schutzes (zusätzlicher Schutz zu vorhandenen Filtern in der Anwendung)
  • Sicherheitslücken können gleichzeitig für mehrere Anwendungen hinter der WAF geschlossen werden
  • Schutz von Anwendungen, die nicht mehr aktualisiert werden können (Altsysteme)
  • Möglichkeit zum Schutz von verwundbaren Anwendungen anderer Anbieter, bis dieser sie selber repariert

Nachteile[Bearbeiten | Quelltext bearbeiten]

  • Sicherheitslücken können u. U. durch ein Umgehen der WAF weiterhin ausgenutzt werden
  • Durch Unterschiede bei der Request-Bearbeitung sind neue Angriffe möglich (beispielsweise HTTP Request Smuggling)
  • Störung des Betriebs durch zu restriktive oder falsch konfigurierte Filter
  • Anwendungen, die aktive Inhalte auf Seiten des Clients einsetzen (z. B. JavaScript) werden schlecht unterstützt oder erfordern einen erheblichen Konfigurationsaufwand
  • Der Einsatz einer WAF kann zu Unachtsamkeit bei der Entwicklung der Anwendung verleiten – eine WAF ist jedoch kein Ersatz für eine sichere Anwendung

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]

  1. http://de.wikipedia.org/w/index.php?title=Web_Application_Firewall
  2. Bundesamt für Sicherheit in der Informationstechnik (BSI): Sicherheit von Webanwendungen - Maßnahmenkatalog und Best Practices
  3. Best Practices - Einsatz von Web Application Firewalls (Guide der deutschen OWASP Sektion)
  4. Web Application Firewall Evaluation Criteria