DNS Flood

Beveiliging & Bedreigingen
Een denial-of-service-aanval die DNS-infrastructuur overweldigt met buitensporige queries.
← Terug naar Woordenlijst

Wat is een DNS Flood Attack?

Een DNS overstroming is een soort Distributed Denial of Service (DDoS) aanval die DNS infrastructuur overweldigt door het verzenden van enorme volumes DNS queries naar DNS servers (authoritatieve nameservers of recursieve resolvers). Het doel is om serverbronnen uit te putten, waardoor de DNS-service niet beschikbaar is en legitieme gebruikers ervan worden weerhouden domeinnamen op te lossen.

Effect van DNS Flood Attacks

Wanneer DNS-servers overweldigd zijn:

Normal operation:

User → DNS query → DNS server → Response → Website loads

During DNS flood:

User → DNS query → DNS server (overwhelmed, no response)

→ Website doesn't load (even though web server is fine)

Effecten:

Soorten DNS-aanvallen

Directe DNS-zoekopdracht

Aanvaller stuurt legitieme DNS-queries op hoog volume:

Botnet → Millions of DNS queries → Target DNS server

Query examples:

example.com A

www.example.com A

random1.example.com A

random2.example.com A

...millions more...

Kenmerken:

DNS-versterkeraanval

Exploiteert recursieve resolvers om aanvalsverkeer te versterken:

1. Attacker sends small query to open resolver

2. Spoofs source IP as victim's IP

3. Resolver sends large response to victim

4. Attacker amplifies bandwidth 28-54x

Voorbeeld:
Attacker sends: 60-byte query for TXT record (ANY query)

Resolver sends: 3000-byte response to victim

Amplification: 50x

NXDOMAIN Flood

Vragen voor niet bestaande domeinen om caching te omzeilen:

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

Vragen legitieme domeinen die niet reageren:

Attacker: Queries resolver for slow/non-responsive domains

Resolver: Waits for timeout, consumes resources

Result: Resolver resource exhaustion

Willekeurige subdomeinaanval

Zoekt willekeurige subdomeinen om cache hits te voorkomen:

Query: abc123random.example.com

Query: xyz789random.example.com

Query: def456random.example.com

Each is unique → cache miss → authoritative query

Overwhelms authoritative nameservers

Aanvallen vectoren en technieken

Botnet-driven aanvallen

Compromised devices:
  • IoT devices (cameras, routers)
  • Infected computers
  • Hacked servers

Distributed attack:

10,000 bots × 100 queries/sec = 1 million queries/sec

Reflectieaanvallen

Attacker spoofs victim's IP

Sends queries to many open resolvers

Resolvers respond to victim with large answers

Victim receives amplified traffic

Toepassing-laag overstromingen

Legitimate-looking queries

Difficult to distinguish from real traffic

May target specific resource-intensive query types

DNS Flood Attacks detecteren

Ongebruikelijke zoekopdracht Volume

Normal baseline: 10,000 queries/second

During attack: 500,000+ queries/second

Monitor:
# Check query rate (BIND)

rndc status | grep "queries resulted"

# Analyze query logs

tail -f /var/log/named/queries.log | wc -l

Hoge NXDOMAIN rate

Normal: 5-10% NXDOMAIN responses

Attack: 50-90% NXDOMAIN responses (random subdomain flood)

Bron IP distributie

Legitimate: Diverse source IPs, geographic spread

Attack: Concentrated sources, unusual geographic patterns

Zoekpatronen

Legitimate: Repetitive queries (common domains cached)

Attack: Unique queries (random strings, no cache benefit)

Responstijd degradatie

Normal: < 50ms response time

Under attack: > 1000ms or timeouts

Verminderen van DNS-aanvallen

Bescherming van de infrastructuur

Anycast DNS

Verdeel het verkeer over meerdere geografische locaties:

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

Voordelen: Providers: Cloudflare, AWS Route 53, NS1, Dyn

Oversized DNS-infrastructuur

Capacity: 10x normal peak traffic

Reserves: Handle sudden spikes

Auto-scaling: Add capacity during attacks

Rate Limiting

# BIND rate limiting (response-rate limiting)

rate-limit {

responses-per-second 10;

window 5;

slip 2;

};

Beperkt de reacties van dezelfde bron om versterkingsaanvallen te voorkomen.

Zoekopdracht Filteren

# Block ANY queries (common in amplification)

# Block excessively long queries

# Block known-malicious patterns

BIND Voorbeeld:
# Block ANY queries

match-query {

type ANY;

action drop;

};

DNS Provider-Level Defenses

DNSSEC

DNSSEC:

Verborgen Meesterconfiguratie

Master server (hidden):    10.0.0.1 (not publicly known)

Slave servers (public): ns1.example.com, ns2.example.com

Attackers target slaves

Master remains operational

Can quickly update slaves if needed

DNS Firewall / IDS

Analyze queries in real-time

Block suspicious patterns

Whitelist known-good clients

Blacklist attack sources

Bescherming op aanvraagniveau

Response Rate Limiting (RRL)

Limit identical responses to same client

Prevents amplification attacks

Slip mode: Occasionally allow queries through (to not break legitimate recursive resolvers)

BIND-configuratie:
options {

rate-limit {

responses-per-second 5;

referrals-per-second 5;

nodata-per-second 5;

nxdomains-per-second 5;

errors-per-second 5;

window 5;

};

};

Cache Optimalisatie

Increase cache size to absorb repeated queries

Longer TTLs where appropriate (trade-off with agility)

Prefetch popular records

Zoekopdracht Filteren

# Drop queries for non-existent zones

# Block queries from known-bad sources

# Rate-limit per-source queries

Netwerkbescherming

BGP Blackholing

Route attack traffic to null0

Sacrifice availability to preserve infrastructure

Last resort when attack overwhelms capacity

Upstream ISP-filtering

Coordinate with ISP to filter attack traffic

Source IP validation (prevent spoofing)

Traffic scrubbing centers

DDoS Mitigation Services

Cloudflare, Akamai, AWS Shield

Absorb attack traffic before reaching your servers

Global capacity to withstand large attacks

Beste praktijken voor DNS Resilience

Gebruik meerdere DNS Providers

Primary provider: Cloudflare

Secondary provider: AWS Route 53

If one is attacked/down, other continues serving

Different infrastructure reduces single point of failure

DNSSEC implementeren

Protects against DNS spoofing/cache poisoning

Maintains integrity during attacks

Build trust even under attack conditions

Monitor DNS Performance

Real-time query rates

Response times

NXDOMAIN percentages

Geographic distribution of queries

Error rates

Tools: Grafana + Prometheus, Datadog, AWS CloudWatch

Reguliere capaciteit testen

Load testing: Can infrastructure handle 10x traffic?

Failover testing: Do secondary providers activate correctly?

Attack simulation: Test mitigation strategies

Recursie op auteursservers uitschakelen

# BIND

recursion no;

Auteurlijke nameservers moeten niet fungeren als recursieve resolvers.

Zoneoverdracht beperken

# BIND

allow-transfer { 10.0.0.2; 10.0.0.3; }; # Only specific slaves

Voorkom dat aanvallers de hele zone dumpen.

Keep Software updated

Regularly update DNS server software

Patch known vulnerabilities

Subscribe to security advisories

Reageren op actieve DNS Flood Attack

Onmiddellijke acties

1. Verify aanval treedt op

# Check query rate

rndc status

# Check load

top

2. Beperking van de snelheid inschakelen

# BIND: Enable RRL if not already active

rndc addzone rate-limit

3. Contact DDoS mitigatieprovider

- Schrobben activeren

- Redirect verkeer door mitigatienetwerk

4. * * Analyseer aanvalspatronen * *

# Top query types

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 voor de hand liggende aanvalsbronnen

# Identify top source IPs

grep "query" /var/log/named/queries.log | awk '{print $5}' | cut -d# -f1 | sort | uniq -c | sort -rn | head -50

# Block at firewall

iptables -A INPUT -s ATTACKER_IP -j DROP

Acties op middellange termijn

1. Schaalinfrastructuur

- Voeg meer naamservercapaciteit toe

- Verdeel via anycast indien niet reeds

2. Extra filtering implementeren

- Blokkeer query patronen specifiek voor aanval

- Whitelist known-good bronnen

3. Coördineren met aanbieders

- ISP/hostingprovider

- DNS provider

- DDoS mitigatiedienst

4. Document aanval

- Pakketvangsten

- Logs

- Verkeersgrafieken

- Voor analyse achteraf en juridische doeleinden

Post-aanvalsanalyse

1. Review doeltreffendheid van mitigatiemaatregelen

2. Identificeer zwakke infrastructuur

3. Bijgewerkte procedures voor incidentrespons

4. Beschouw verbeteringen op lange termijn (multi-provider DNS, grotere capaciteit)

Juridische zaken en verslaglegging

Rapporteer aan autoriteiten

Bewijsverzameling

# Packet captures

tcpdump -i eth0 -w dns-attack.pcap port 53

# Full query logs

tar -czf attack-logs-$(date +%Y%m%d).tar.gz /var/log/named/

# Traffic graphs/screenshots

# System resource usage

DNS overstromingsaanvallen zijn een ernstige bedreiging voor online diensten, maar met de juiste infrastructuur, monitoring en mitigatie strategieën, hun impact kan worden geminimaliseerd.

Pas Deze Kennis Toe

Gebruik de API van DomScan om domeinbeschikbaarheid, gezondheid en meer te controleren.