Zum Hauptinhalt springen

Eine Web Application Firewall (WAF) filtert bösartige Anfragen, bevor sie verwundbaren Code erreichen. Sie ist besonders wertvoll in der Zeit zwischen Bekanntwerden einer Lücke und dem Einspielen des Patches, oder wenn es (noch) keinen Patch gibt.

Die drei Ebenen

Edge/DNS-WAF Server-WAF Plugin-WAF
Beispiele Cloudflare, Sucuri Firewall, Bunny Shield, Akamai ModSecurity mit OWASP CRS, Imunify360, Hoster-WAF Wordfence, Patchstack, Solid Security, NinjaFirewall
Wirkt vor dem Server PHP WordPress (teilweise vor Plugins)
Entlastet Server ja, stark teilweise nein
Kennt WordPress-Kontext eingeschränkt eingeschränkt ja (Benutzer, Rollen, Plugins)
Umgehbar durch direkten Zugriff auf Server-IP – Lücken, die vor dem Laden greifen

Edge-WAF (z. B. Cloudflare)

  • Blockiert Bots, DDoS und bekannte Angriffsmuster, bevor sie Ressourcen verbrauchen.
  • Rate Limiting für Login, XML-RPC und Suchanfragen.
  • Wichtig: Origin-Server absichern. Nur IPs des WAF-Anbieters zulassen (Firewall oder Authenticated Origin Pulls), sonst umgehen Angreifer die WAF über die direkte Server-IP. Die IP lässt sich oft über alte DNS-Einträge, Mail-Header oder Zertifikats-Logs finden.
  • Echte Besucher-IP an WordPress weitergeben (CF-Connecting-IP bzw. real_ip-Modul), sonst sehen Logs und Security-Plugins nur WAF-IPs.

Plugin-WAF und virtuelles Patching

Plugin-WAFs mit WordPress-spezifischen Regeln können gezielt einzelne Plugin-Schwachstellen blockieren (virtuelles Patching), oft innerhalb von Stunden nach Bekanntwerden. Patchstack ist auf dieses Modell spezialisiert. Wordfence bietet eine WAF mit Echtzeit-Regeln in der Premium-Version (in der Gratisversion verzögert).

Für maximale Wirkung wird die Plugin-WAF per auto_prepend_file vor WordPress geladen („Extended Protection“). So greift sie auch bei Lücken in Plugins, die sehr früh laden.

Empfohlene Kombination

  1. Edge-WAF für Bot-Abwehr, Rate Limiting, DDoS und Performance (CDN).
  2. Virtuelles Patching auf WordPress-Ebene für Plugin-spezifische Lücken.
  3. Bei eigenem Server zusätzlich ModSecurity mit OWASP Core Rule Set bzw. dessen WordPress-Ausnahmen-Plugin, um Fehlalarme zu vermeiden.

Grenzen

  • Eine WAF ersetzt keine Updates. Sie verschafft Zeit.
  • Angriffe mit gültigen Zugangsdaten sieht sie nicht als Angriff.
  • Logik-Fehler (z. B. fehlende Berechtigungsprüfung bei legitim aussehenden Requests) erkennt sie nur mit spezifischen Regeln.
  • Fehlalarme im Block-Editor und bei Formularen einplanen und Ausnahmen gezielt statt pauschal setzen.

Weiterführende Artikel

Quellen und Dokumentation