Was ist ein DNS Flood Attack?
A DNS Flut ist eine Art von verteilten Denial of Service (DDoS) Angriff, der DNS Infrastruktur überfordert, indem massive Mengen von DNS Abfragen an DNS Server (autoritative Nameserver oder rekursive Resolver) gesendet werden. Das Ziel ist es, Serverressourcen zu erschöpfen, so dass der DNS-Dienst nicht verfügbar ist und legitime Benutzer daran hindern, Domainnamen zu lösen.
Auswirkungen von DNS Flood Attacken
Wenn DNS Server überfordert sind:
`
Normalbetrieb:
Benutzer → DNS Abfrage → DNS Server → Antwort → Website lädt
Während der DNS Flut:
Benutzer → DNS Abfrage → DNS Server (überwältigt, keine Antwort)
→ Website lädt nicht (auch wenn Webserver gut ist)
**Effects*:
- Websiten werden nicht erreichbar (auch wenn Webserver funktionieren)
- E-Mail-Lieferung scheitert (MX Record Lookups scheitern)
- APIs und Services, die auf DNS angewiesen sind, werden nicht verfügbar
- Kollaterale Beschädigung der gemeinsamen DNS Infrastruktur
Arten von DNS Flood Attacks
Direct DNS Query Flood
Angreifer sendet legitime DNS-Abfragen bei hohem Volumen:
Botnet → Millionen von DNS Abfragen → Ziel DNS Server
Abfragebeispiele:
example.com A
www.example.com A
random1.example.com A
random2.example.com A
...Millionen mehr...
**Charakteristik*:
- Gültig DNS Abfragen (hart zu filtern)
- Oft für zufällige Subdomains (Bypass Caching)
- Verwenden Sie Botnets für verteilten Angriff
DNS Amplification Attack
Exploits rekursive Resolver, um Angriffsverkehr zu verstärken:
1. Angreifer sendet kleine Abfrage zum Öffnen des Resolvers
2. Spoofs Quelle IP als Opfer IP
3. Resolver sendet große Antwort auf das Opfer
4. Angreifer verstärkt Bandbreite 28-54x
Beispiel:
Angreifer sendet: 60-byte Abfrage für TXT-Record (ANY-Abfrage)
Resolver sendet: 3000-byte Antwort auf das Opfer
Verstärkung: 50x
NXDOMAIN Flood
Abfragen für nicht vorhandene Domains zum Bypass-Caching:
Query: random-12345.example.com (doesn't exist)
Server must check authoritative zone every time
Cannot be cached (NXDOMAIN responses often have low TTL)
Consumes more server resources than cached responses
Phantom Domain Attack
Abfragen legitime Domains, die nicht antworten:
Attacker: Queries resolver for slow/non-responsive domains
Resolver: Waits for timeout, consumes resources
Result: Resolver resource exhaustion
Random Subdomain Attack
Abfragen zufälliger Subdomains, um Cache-Hits zu vermeiden:
Anfrage: abc123random.example.com
Anfrage: xyz789random.example.com
Anfrage: def456random.example.com
Jeder ist einzigartig → cache miss → autoritäre Abfrage
Überwältigt autoritäre Nameserver
Angriffsvektoren und Techniken
Botnet-Driven Attacks
Kompromierte Geräte:
- IoT-Geräte (Kameras, Router)
- Infizierte Computer
- Hacked Server
Verteilter Angriff:
10.000 Bots × 100 Abfragen/sec = 1 Million Anfragen/sec
Reflection Attacks
Attacker spoofs victim's IP
Sends queries to many open resolvers
Resolvers respond to victim with large answers
Victim receives amplified traffic
Application-Layer Floods
Legitimate-looking queries
Difficult to distinguish from real traffic
May target specific resource-intensive query types
DNS Flood Attacks erkennen
Unusual Query Volume
Normal baseline: 10,000 queries/second
During attack: 500,000+ queries/second
Monitor:
# Abfragerate prüfen (BIND)
rndc status | grep "queries result"
# Abfrageprotokolle analysieren
-f /var/log/name/queries.log | wc -l
<h3>High NXDOMAIN Rate</h3>
Normal: 5-10% NXDOMAIN responses
Attack: 50-90% NXDOMAIN responses (random subdomain flood)
Quelle IP Distribution
Legitimate: Diverse source IPs, geographic spread
Attack: Concentrated sources, unusual geographic patterns
<h3>Query Patterns</h3>
Legitimate: Repetitive queries (common domains cached)
Attack: Unique queries (random strings, no cache benefit)
<h3>Response Time Degradation</h3>
Normal: < 50ms response time
Under attack: > 1000ms or timeouts
Mitigating DNS Flood Attacks
<h3>Infrastruktur-Level Defenses</h3>
Irgendwelchecast DNS
Verteilen Sie Traffic über mehrere geographische Standorte:
Single IP address (e.g., 1.2.3.4) announced from multiple locations
Attack traffic automatically routed to nearest server
Load distributed across global network
Harder to overwhelm all locations simultaneously
** Leistungen*:
- Automatische Lastverteilung
- Geographische Widerstandsfähigkeit
- Angriffsverkehrsabsorption
Provider: Cloudflare, AWS Route 53, NS1, Dyn
Überdimensionierte DNS Infrastruktur
Capacity: 10x normal peak traffic
Reserves: Handle sudden spikes
Auto-scaling: Add capacity during attacks
Temperaturbegrenzung
# BIND rate limiting (response-rate limiting)
rate-limit {
responses-per-second 10;
window 5;
slip 2;
};
Beschränkt die Antworten von derselben Quelle, um Verstärkungsangriffe zu verhindern.
Query Filtering
# Block ANY queries (common in amplification)
# Block excessively long queries
# Block known-malicious patterns
**BIND Beispiel*:
# Block ANY Abfragen
Match-query {
Typ ANY;
Aktionstropfen;
};
<h3>DNS Provider-Level Defenses</h3>
DNSSEC
DNSSEC:
- Verhindert die Cache-Vergiftung bei Angriffen
- Aufrechterhaltung der Integrität unter Angriffsbedingungen
Versteckte Masterkonfiguration
Masterserver (versteckt): 10.0.0.1 (nicht öffentlich bekannt)
Slave Server (öffentlich): ns1.example.com, ns2.example.com
Angreifer Ziel Sklaven
Master bleibt betriebsbereit
Kann Slaves schnell aktualisieren, wenn nötig
DNS Firewall / IDS
Analyze queries in real-time
Block suspicious patterns
Whitelist known-good clients
Blacklist attack sources
<h3>Application-Level Protections</h3>
Reaktionsgeschwindigkeitsbegrenzung (RRL)
Limit identical responses to same client
Prevents amplification attacks
Slip mode: Occasionally allow queries through (to not break legitimate recursive resolvers)
**BIND Konfiguration*:
Optionen {
Zinssatz {
Antworten pro Sekunde 5;
Referralen pro Sekunde 5;
Nodata-per-Sekunde 5;
nxdomains-per-Sekunde 5;
Fehler pro Sekunde 5;
Fenster 5;
};
};
Cache Optimierung
Increase cache size to absorb repeated queries
Longer TTLs where appropriate (trade-off with agility)
Prefetch popular records
Query Filtering
# Drop queries for non-existent zones
# Block queries from known-bad sources
# Rate-limit per-source queries
<h3>Network-Level Defenses</h3>
BGP Blackholing
Route attack traffic to null0
Sacrifice availability to preserve infrastructure
Last resort when attack overwhelms capacity
Upstream ISP Filterung
Coordinate with ISP to filter attack traffic
Source IP validation (prevent spoofing)
Traffic scrubbing centers
DDoS Mitiging Services
Cloudflare, Akamai, AWS Shield
Absorb attack traffic before reaching your servers
Global capacity to withstand large attacks
Beste Praktiken für DNS Resilience
<h3>Verwenden Sie mehrere DNS Anbieter</h3>
Primärer Anbieter: Cloudflare
Sekundäranbieter: AWS Route 53
Wenn man angegriffen wird/abwärts, andere weiterhin dienen
Unterschiedliche Infrastruktur reduziert einen Punkt des Ausfalls
<h3>Implement DNSSEC</h3>
Protects against DNS spoofing/cache poisoning
Maintains integrity during attacks
Build trust even under attack conditions
<h3>Monitor DNS Performance</h3>
Real-time query rates
Response times
NXDOMAIN percentages
Geographic distribution of queries
Error rates
Tools: Grafana + Prometheus, Datadog, AWS CloudWatch
<h3>Regelmäßige Kapazitätsprüfung</h3>
Load testing: Can infrastructure handle 10x traffic?
Failover testing: Do secondary providers activate correctly?
Attack simulation: Test mitigation strategies
<h3>Recursion auf autoritären Servern deaktivieren</h3>
# BIND
recursion no;
Authoritative Nameserver sollten nicht als rekursive Resolver fungieren.
<h3>Restrict Zone Transfers</h3>
# BIND
allow-transfer { 10.0.0.2; 10.0.0.3; }; # Only specific slaves
Verhindern Sie Angreifer vom Dumping der gesamten Zone.
<h3>Software aktualisieren</h3>
Regularly update DNS server software
Patch known vulnerabilities
Subscribe to security advisories
Antwort auf Active DNS Flood Attack
<h3>Sofortige Aktionen</h3>
1. Verify-Angriff auftritt
bash
# Abfragerate überprüfen
rndc status
# Lade prüfen
Kopf
2. Leistungsbeschränkung
# BIND: RRL aktivieren, wenn nicht bereits aktiv
rndc addzone rate-limit
3. Kontakt DDoS Mitiging Provider
- Aktivieren Sie Waschdienstleistungen
- Umleiten des Verkehrs durch das Minderungsnetz
4. Analyse von Angriffsmustern
bash
# Top-Abfrage-Typen
grep "query" /var/log/named/queries.log | awk '{print $6}' | sort | uniq -c | sort -rn | head -20
# Top queried domains
grep "query" /var/log/named/queries.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -20
5. Block offensichtliche Angriffsquellen
# Identify Top Source IPs
"query" /var/log/named/queries.log | awk '{print $5}' | cut -d# -f1 | sort | uniq -c | sort -rn | head -50
# Block bei firewall
iptables -A INPUT -s ATTACKER IP -j DROP
<h3>Medium-Term Actions</h3>
1. Skalierte Infrastruktur
- Mehr Nameserver-Kapazität hinzufügen
- Verteilen über einen beliebigen Ton, wenn nicht bereits
2. Implementieren Sie zusätzliche Filterung
- Blockabfrage-Muster speziell für Angriffe
- Weiße Liste bekannter Quellen
3. Koordinate mit Anbietern
- ISP/Host Provider
- DNS Anbieter
- DDoS Mitiging Service
4. Aussprache
- Packet-Captures
- Logs
- Verkehrsdiagramme
- Für Post-incident Analyse und rechtliche Zwecke
<h3>Post-Attack-Analyse</h3>
1. Review Wirksamkeit von Minderungen
2. Identifizieren von Infrastrukturschwächen
3. Aktualisieren der Vorfallsantwortverfahren
4. Übersicht langfristige Verbesserungen (Multiprovider DNS, größere Kapazität)
Recht und Berichterstattung
<h3>Report to Authorities</h3>
- FBI IC3 (U.S): ic3.gov
- Lokale Cybercrime-Einheiten
- ISP Missbrauchsabteilungen
<h3>Evidence Collection</h3>
bash
# Packet fängt an
tcpdump -i eth0 -w dns-attack.pcap port 53
# Vollständige Abfrageprotokolle
tar -czf attack-logs-$(date +%Y%m%d). tar.gz /var/log/name/
# Verkehrsdiagramme/Bildschirme
# Systemressourcennutzung
`
DNS Überschwemmungen sind eine ernsthafte Bedrohung für Online-Dienste, aber mit einer richtigen Infrastruktur, Überwachung und Minderungsstrategien können ihre Auswirkungen minimiert werden.