WAF (Web Application Firewall) blokuje SQL injection, XSS, path traversal a bot traffic na aplikační vrstvě. Je to defense-in-depth vrstva — doplňuje bezpečný kód, nespustí se místo něj. WAF analyzuje HTTP requesty a odpovědi podle pravidel a blokuje podezřelé patterny dříve, než dosáhnou aplikace. Pro webové aplikace exponované na internet je WAF standard.
ModSecurity + OWASP CRS¶
# Nginx konfigurace
modsecurity on;
modsecurity_rules_file /etc/modsecurity/crs/crs-setup.conf;
modsecurity_rules_file /etc/modsecurity/crs/rules/*.conf;
ModSecurity je open-source WAF engine pro Nginx, Apache a IIS. OWASP Core Rule Set (CRS) obsahuje pravidla proti OWASP Top 10 zranitelnostem — SQL injection, XSS, command injection, path traversal a další. CRS pracuje s anomaly scoring — každý podezřelý pattern přidá body a request je blokován při překročení threshold. Tím se minimalizují false positives oproti binárnímu block/allow.
AWS WAF¶
resource "aws_wafv2_web_acl" "main" {
default_action { allow {} }
rule {
name = "aws-managed"
statement {
managed_rule_group_statement {
vendor_name = "AWS"
name = "AWSManagedRulesCommonRuleSet"
}
}
}
}
AWS WAF nabízí managed rule groups od AWS i třetích stran. Integrace s CloudFront a ALB je nativní. Cloudflare WAF je alternativa s globální edge sítí a jednodušší konfigurací. Oba poskytují bot management, geo-blocking a custom rules.
Nasazení a tuning¶
Nikdy nenasazujte WAF rovnou v blocking mode. Začněte v detection/logging mode, analyzujte logy a identifikujte false positives. Typické false positives: JSON API payloady detekované jako SQL injection, base64 obsah detekovaný jako XSS. Vytvořte výjimky pro legitimní patterny a teprve pak přepněte na blocking.
Klíčový takeaway¶
WAF je defense-in-depth, ne náhrada za bezpečný kód. Začněte s managed rules v detection mode, tuning false positives a postupné zpřísnění. ModSecurity pro self-hosted, AWS WAF nebo Cloudflare WAF pro cloud.