WAF

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen


Web Application Firewall (WAF) – TLS-Terminierung und Layer-7-Inspektion

Allgemeines Konzept

  • Ein Client greift per HTTPS auf einen Webdienst zu
  • Der HTTPS-Datenstrom wird nicht direkt zum Webserver geleitet
  • Stattdessen befindet sich eine Web Application Firewall (WAF) zwischen Client und Webserver
  • Die WAF fungiert als TLS-Verschlüsselungsendpunkt
  • Die TLS-Verbindung des Clients endet an der WAF

TLS-Terminierung

  • Die WAF nimmt die eingehende HTTPS-Verbindung vom Client entgegen
  • Die verschlüsselte Verbindung wird auf der WAF entschlüsselt
  • Der HTTP-Datenstrom liegt nun innerhalb der WAF im Klartext vor
  • Erst jetzt ist eine Analyse auf Anwendungsebene möglich

Inhaltsanalyse auf Anwendungsebene

  • Nach der Entschlüsselung erfolgt eine Prüfung des HTTP-Datenstroms
  • Analysiert werden z. B.:
    • HTTP-Header
    • URI und Parameter
    • Cookies
    • POST-Daten
    • JSON- oder XML-Payloads
  • Die Analyse erfolgt auf Layer 7 des OSI-Modells
  • Ziel ist die Erkennung von Angriffsmustern auf Webanwendungen

Weiterleitung an das Backend

  • Nach erfolgreicher Prüfung wird der Request an den Webserver weitergeleitet
  • Die Weiterleitung kann erfolgen über:
    • HTTP (internes Netz)
    • HTTPS (Re-Verschlüsselung)
  • Der Webserver selbst erhält nur bereits geprüfte Anfragen

Sicherheitsgewinn

  • Der Webserver ist nicht direkt aus dem Internet erreichbar
  • Die Analyse erfolgt vor der Verarbeitung durch die Anwendung
  • Angriffe auf Anwendungsebene können vorab erkannt und blockiert werden
  • Die WAF übernimmt die Rolle eines sicherheitsrelevanten Layer-7-Gateways