Ook wel bekend als DNS-spoofing, is DNS-cache-vergiftiging een aanval die is ontworpen om kwetsbaarheden in een DNS- of domeinnaamsysteem te lokaliseren en vervolgens te misbruiken om organisch verkeer van een legitieme server naar een nep-server weg te leiden.
De dreiging van DNS-cache-vergiftigingen kwam vorig jaar in het nieuws toen de DNS-servers van cryptogigant, MyEtherWallet, werden gekaapt en legitieme gebruikers naar een phishingwebsite werden omgeleid.
Als gevolg van de cache-vergiftiging werden meerdere gebruikers misleid om hun portefeuillesleutels op te geven vóór hun cryptovaluta’s over te boeken naar een andere digitale portemonnee die aan de hackers was gekoppeld. Al met al stalen de hackers Ethereums ter waarde van ongeveer honderdzestigduizend dollar voordat het probleem werd geïdentificeerd en gestopt.
Dit is slechts een voorbeeld dat illustreert hoe gevaarlijk een DNS-cache-vergiftiging kan zijn. Een andere reden waarom dit soort aanvallen gevaarlijk is, is omdat het zich gemakkelijk van de ene DNS-server naar de andere kan worden verspreid.
In dit artikel behandelen we het onderwerp hoe DNS-cache-vergiftiging werkt en vervolgens enkele oplossingen die u kunt toepassen om het te stoppen, mocht dit u ooit overkomen.
Hoe werkt een DNS-cache-vergiftiging?
Elke keer dat uw browser contact opneemt met een domeinnaam, moet deze eerst contact opnemen met de DNS-server.
Domain Name Servers (DNS) zijn het internet-equivalent van een telefoonboek. Ze onderhouden een lijst met domeinnamen en vertalen deze naar Internet Protocol (IP) adressen.
Dit is nodig omdat, hoewel domeinnamen voor mensen gemakkelijk te onthouden zijn, computers en machines toegang hebben tot websites op basis van IP-adressen.
De server zal dan reageren met minstens één (maar meestal meer) IP-adres zodat uw computer de domeinnaam kan bereiken. Zodra uw computer verbinding heeft gemaakt met het IP-adres, converteert de DNS de domeinnaam in een IP-adres dat uw computer kan lezen.
Op dit moment gebruikt uw internetserviceprovider meerdere DNS-servers, die ieder ook informatie van andere servers in hun cache bewaren (of opslaan). De wifi-router die u thuis heeft, fungeert in feite ook als een DNS-server, omdat deze informatie van de servers van uw internetprovider in de cache opslaat.
Een DNS-cache is "vergiftigd" wanneer de server een onjuiste invoer ontvangt. Om dit in perspectief te plaatsen, kan dat voorkomen wanneer een hacker de controle over een DNS-server verkrijgt en vervolgens informatie daarin wijzigt.
Ze kunnen bijvoorbeeld de informatie zodanig wijzigen dat de DNS-server gebruikers vertelt om naar een bepaalde website met het verkeerde adres te zoeken. Met andere woorden, de gebruiker zou de 'juiste' naam van de website invoeren, maar dan naar het verkeerde IP-adres, en, in het bijzonder, naar een phishing-website worden gezonden.
Eerder noemden we dat een van de redenen waarom DNS-cache-vergiftiging gevaarlijk is dat het zich zo snel mogelijk van de ene DNS-server naar de andere kan verspreiden. Dit wordt bereikt als en wanneer meerdere internetproviders hun DNS-informatie van de server ontvangen die nu door hackers wordt bestuurd, wat resulteert in de verspreiding van de 'vergiftigde' DNS-invoer naar die ISP's die in de cache moeten worden opgeslagen.
Vanaf dat moment kan het zich naar andere DNS-servers en routers thuis verspreiden, en zullen computers de DNS-vermelding alleen opzoeken om de verkeerde reactie te ontvangen, waardoor steeds meer mensen het slachtoffer worden van de vergiftiging. Pas indien de vergiftigde cache op elke getroffen DNS-server is gewist, zal het probleem zijn opgelost.
Hoe te beschermen tegen DNS-cache-vergiftigingen
Een van de lastige aspecten van een DNS-cache-vergiftiging is dat het uiterst moeilijk zal zijn om te bepalen of de DNS-antwoorden die u ontvangt legitiem zijn of niet. In het geval van My Ethereum Wallet hadden ze zeer beperkte middelen om de situatie te voorkomen en het probleem werd uiteindelijk door hun serverproviders opgelost.
Gelukkig zijn er nog steeds een aantal maatregelen die uw organisatie kan nemen om te voorkomen dat u een dergelijke aanval overkomt, dus u moet niet denken dat het onmogelijk of bijna onmogelijk is om een DNS-cache-vergiftiging te voorkomen.
U moet bijvoorbeeld uw DNS-servers door een IT-professional laten configureren om bijna onafhankelijk te zijn van relaties met andere DNS-servers. Dit maakt het veel moeilijker voor cybercriminelen om hun DNS-servers te gebruiken om hun doelen te corrumperen, wat betekent dat uw eigen DNS-server minder kans loopt om te worden gecorrumpeerd en dat u (en iedereen in uw organisatie) minder snel naar een onjuiste website wordt omgeleid.
U kunt bovendien uw DNS-servers laten configureren om alleen gegevens op te slaan die specifiek betrekking hebben op het gevraagde domein en ook om de antwoorden op verzoeken te beperken tot het uitsluitend verstrekken van informatie die betrekking heeft op het aangevraagde domein. Het idee is dat de server zodanig wordt ingesteld dat de gevraagde services de enige zijn die mogen worden uitgevoerd. Door het laten uitvoeren van extra services op uw DNS-server die niet nodig zijn, vergroot u aanzienlijk de kans dat er een aanval plaatsvindt.
U dient er ook voor te zorgen dat de meest recente versie van de DNS wordt gebruikt. De reden hiervoor is dat de meest recente versies gebruik maken van beveiligingsfuncties, zoals poort-randomisatie en transactie-ID's die cryptografisch beveiligd zijn, om te helpen beschermen tegen vergiftigingsaanvallen.
Een andere belangrijke verdediging tegen DNS-cache-vergiftigingen, zoals MyEtherWallet adviseerde in een aankondiging na de aanval die plaatsvond in april 2018, is om de bedrijfsnaam op te zoeken in de adresbalk (dus in hun geval 'MyEtherWallet Inc').
Dit betekent dat de site een EV SSL/TLS certificaat gebruikt. Dit zou helpen voorkomen dat mensen het slachtoffer worden van een vergiftigingsaanval, omdat ze ervoor zouden zorgen om hun persoonlijke gegevens niet op de website van een hacker in te voeren. Niet alle bedrijven gebruiken EV op hun websites, dus dit is geen onfeilbare maatregel, maar het kan een handig hulpmiddel zijn om te bepalen of u op de juiste site bent.
Een SSL/TLS-certificaat is eenvoudigweg een klein gegevensbestand dat op een webserver is geïnstalleerd dat de gegevens van uw organisatie aan een cryptografiesleutel kan binden. Nadat het is geïnstalleerd, activeert het certificaat het HTTPS-protocol om een veilige en gecodeerde verbinding tussen een browser en uw webserver mogelijk te maken. In het geval van EV SSL / TLS-certificaten, zullen enkele van die organisatiegegevens, inclusief de bedrijfsnaam zoals hierboven vermeld, direct in de gebruikersinterface van de browser worden weergegeven.
Conclusie
Samengevat, DNS cache-vergiftiging is wanneer een aanvaller een DNS-server misbruikt om een vervalst DNS-antwoord te verzenden dat door legitieme servers in de cache wordt opgeslagen.
Vervolgens worden gebruikers die het beschadigde domein bezoeken naar een nieuw IP-adres gezonden dat de hacker heeft geselecteerd. Dit is meestal een kwaadaardige phishing-website waar slachtoffers kunnen worden gemanipuleerd om malware te downloaden of aanmeldingsgegevens of financiële gegevens te verstrekken.
Het uitvoeren van de bovenstaande stappen zal uw organisatie helpen om zich tegen DNS-cache-vergiftigingsaanvallen te beschermen.
Opmerking: Dit blogartikel is geschreven door een gastcorrespondent met het doel een grotere verscheidenheid aan inhoud aan onze lezers aan te bieden. De meningen in dit artikel over de gastauteur zijn uitsluitend die van de correspondent en komen niet noodzakelijkerwijs overeen met die van GlobalSign