DNS Spoofing
Wat is domain name system (DNS) spoofing
Domain Name Server (DNS) spoofing (ook wel DNS cache poisoning genoemd) is een aanval waarbij gewijzigde DNS records worden gebruikt om online verkeer om te leiden naar een frauduleuze website die lijkt op de beoogde bestemming.
Eenmaal daar aangekomen worden gebruikers gevraagd in te loggen op (wat zij denken dat) hun account is, wat de dader de kans geeft hun toegangsgegevens en andere gevoelige informatie te stelen. Bovendien wordt de kwaadaardige website vaak gebruikt om wormen of virussen op de computer van een gebruiker te installeren, waardoor de dader langdurig toegang krijgt tot de computer en de gegevens die erop zijn opgeslagen.
Methodes voor het uitvoeren van een DNS-spoofingaanval zijn onder meer:
- Man in the middle (MITM) – Het onderscheppen van communicatie tussen gebruikers en een DNS-server om gebruikers naar een ander/maligieus IP-adres te routeren.
- DNS-server compromitteren – Het direct kapen van een DNS-server, die is geconfigureerd om een malafide IP-adres terug te sturen.
DNS-servercompromitteraanval.
DNS cache poisoning voorbeeld
Het volgende voorbeeld illustreert een DNS cache poisoning-aanval, waarbij een aanvaller (IP 192.168.3.300) een communicatiekanaal onderschept tussen een client (IP 192.168.1.100) en een servercomputer die behoort tot de website www.estores.com (IP 192.168.2.200).
In dit scenario wordt een tool (bijv, arpspoof) gebruikt om de client te laten denken dat het IP van de server 192.168.3.300 is. Tegelijkertijd wordt de server wijsgemaakt dat het IP van de client ook 192.168.3.300 is.
Zo’n scenario zou als volgt verlopen:
- De aanvaller gebruikt arpspoof om het commando te geven: arpspoof 192.168.1.100 192.168.2.200. Dit wijzigt de MAC-adressen in de ARP-tabel van de server, waardoor deze denkt dat de computer van de aanvaller bij de client hoort.
- De aanvaller gebruikt opnieuw arpspoof om het commando te geven: arpspoof 192.168.2.200 192.168.1.100, wat de client vertelt dat de computer van de aanvaller de server is.
- De aanvaller geeft het Linux commando: echo 1> /proc/sys/net/ipv4/ip_forward. Hierdoor worden IP-pakketten die tussen de client en de server worden verzonden, doorgestuurd naar de computer van de dader.
- Het hostbestand, 192.168.3.300 estores.com wordt aangemaakt op de lokale computer van de aanvaller, die de website www.estores.com aan zijn lokale IP koppelt.
- De dader zet een webserver op het IP van de lokale computer op en maakt een nepwebsite die lijkt op www.estores.com.
- Ten slotte wordt een tool (bijv, dnsspoof) wordt gebruikt om alle DNS-verzoeken naar het lokale host-bestand van de dader te leiden. De nepwebsite wordt hierdoor aan gebruikers getoond en, alleen door interactie met de site, wordt malware op hun computers geïnstalleerd.
Zie hoe Imperva DDoS Protection u kan helpen met DNS spoofing-aanvallen.
DNS spoofing mitigatie met domain name server security (DNSSEC)
DNS is een onversleuteld protocol, waardoor het gemakkelijk is om verkeer te onderscheppen met spoofing. Bovendien valideren DNS-servers niet de IP-adressen waarnaar ze verkeer omleiden.
DNSSEC is een protocol dat is ontworpen om uw DNS te beveiligen door extra verificatiemethoden toe te voegen. Het protocol creëert een unieke cryptografische handtekening die wordt opgeslagen naast uw andere DNS-records, bijvoorbeeld A record en CNAME. Deze handtekening wordt vervolgens door uw DNS-oplosser gebruikt om een DNS-antwoord te authenticeren, zodat u er zeker van bent dat er niet met het record is geknoeid.
Terwijl DNSSEC kan helpen beschermen tegen DNS-spoofing, heeft het een aantal potentiële nadelen, waaronder:
- Gebrek aan vertrouwelijkheid van gegevens – DNSSEC authenticeert, maar codeert DNS-antwoorden niet. Als gevolg hiervan kunnen daders nog steeds meeluisteren met het verkeer en de gegevens gebruiken voor geavanceerdere aanvallen.
- Complexe implementatie – DNSSEC wordt vaak verkeerd geconfigureerd, waardoor servers de beveiligingsvoordelen kunnen verliezen of zelfs de toegang tot een website helemaal kunnen weigeren.
- Zone-indeling – DNSSEC maakt gebruik van extra resource-records om handtekeningvalidatie mogelijk te maken. Een van deze records, NSEC, kan verifiëren of een DNS-zone niet bestaat. Het kan ook worden gebruikt om door een DNS-zone te lopen om alle bestaande DNS-records te verzamelen – een kwetsbaarheid die zone-enumeratie wordt genoemd. Nieuwere versies van NSEC, NSEC3 en NSEC5 genaamd, publiceren gehashte records van hostnamen, waardoor ze worden versleuteld en zone-enumeratie wordt voorkomen.