Hur hackare förvränger DNS-begäranden med DNS Cache Poisoning

Domännamnsserver (DNS) Spoofing är en cyberattack som lurar din dator att tro att den kommer till rätt webbplats, men det är den inte. Angripare använder DNS cache poisoning för att kapa internettrafik och stjäla användaruppgifter eller personuppgifter.

DNS cache poisoning och DNS spoofing är synonyma och används ofta synonymt. Men för att vara exakt kan man se dem som hur och vad i samma cyberattack. Hackaren vill lura användarna att skriva in sina privata uppgifter på osäkra webbplatser. Hur ska de göra detta? Genom att förgifta DNS-cachen. Vad de gör är att förvränga eller ersätta DNS-data för en viss webbplats så att den omdirigeras till hackarens server och inte till den legitima webbservern. Därifrån är hackaren förberedd för att utföra en phishing-attack, stjäla data eller till och med injicera skadlig kod i offrets system.

Få den kostnadsfria Pen Testing Active Directory Environments EBook

”Det här har verkligen öppnat mina ögon för AD-säkerhet på ett sätt som defensivt arbete aldrig har gjort.”

Varonis kan upptäcka DNS cache poisoning-attacker genom att övervaka DNS och upptäcka onormalt beteende i din användares aktivitet.

  • Vad är DNS Spoofing och Cache Poisoning?
  • Hur fungerar en DNS Cache Poisoning-attack?
  • Hur man upptäcker DNS Cache Poisoning
  • Hur man skyddar sig mot DNS Cache Poisoning
  • Fakultativa frågor om DNS Spoofing

Vad är DNS Spoofing och Cache Poisoning?

För att vi ska kunna prata om angreppet behöver vi en uppfräschning om vad som är DNS och DNS caching. DNS är den världsomspännande katalogen för IP-adresser och domännamn. Se det som en telefonbok för Internet. Den översätter slutanvändarvänliga webbadresser som Varonis.com till IP-adresser som 192.168.1.169 som används av datorer för nätverkande.

DNS caching är det system som lagrar dessa adresser i DNS-servrar runt om i världen. För att hålla dina DNS-förfrågningar snabba skapade de ursprungliga utvecklarna ett distribuerat DNS-system. Varje server lagrar en lista över DNS-poster som den känner till – detta kallas cache. Om din närmaste DNS-server inte känner till den IP-adress du behöver frågar den andra DNS-servrar i tidigare led tills den hittar IP-adressen för den webbplats du försöker nå. Din DNS-server sparar sedan den nya posten i din cache för snabbare svarstider.

Exempel och effekter av DNS Cache Poisoning

DNS utformades inte alls för att hantera det moderna internet. Det har blivit bättre med åren, men en felkonfigurerad DNS-server som hämtade DNS-poster från en server i Kina – och plötsligt kan ingen komma åt Facebook. Denna incident visar hur beroende av DNS vi är. En person konfigurerar fel på en server och plötsligt känner hundratals miljoner människor av effekterna.

WikiLeaks var också måltavla för angripare som använde sig av en attack med DNS-cacheförgiftning för att kapa trafik till sin egen Wikileaksliknande version. Detta var en avsiktlig attack som syftade till att hålla trafiken borta från Wikileaks med viss framgång.

DNS cache poisoning-attacker är smygande och svåra att fånga för vanliga människor. DNS är för närvarande ett system som först och främst bygger på förtroende, vilket är anledningen till att det är lätt att utnyttja. Människor litar på DNS till bristningsgränsen och kontrollerar aldrig riktigt om adressen i webbläsaren är den adress de förväntade. Angripare utnyttjar denna självbelåtenhet och ouppmärksamhet för att stjäla autentiseringsuppgifter eller mer.

Hur fungerar ett angrepp mot DNS Cache Poisoning?

DNS cache poisoning är när din närmaste DNS-server har en post som skickar dig till fel adress – vanligtvis en som en angripare kontrollerar. Här är några olika tekniker som angripare använder för att förgifta DNS-cache.

Hijacking the Local Network With ARP Spoofing

Det lokala nätverket kan vara ett överraskande sårbart mål. Många administratörer tror att de har koll på detta, men djävulen kan finnas i detaljerna. Ett vanligt problem är anställda som arbetar hemifrån. Är deras Wi-Fi säkert? Hackare kan knäcka ett svagt Wi-Fi-lösenord på bara några timmar. Ett annat problem är öppna Ethernet-portar i korridorer och offentliga lobbyer. Tänk dig att någon som väntar i lobbyn kopplar in ethernetkabeln som är avsedd för lobbyns bildskärm.

Låt oss ta en titt på hur en hackare potentiellt skulle kunna använda sig av tillgång till det lokala nätverket i en av dessa situationer.

För det första skulle hackaren skapa en phishing-sida som de kan använda för att samla in användarens inloggningsuppgifter och andra värdefulla data. De skulle sedan kunna vara värd för denna sida lokalt i nätverket eller på distans på en server med en enda rad pythonkod.

Därifrån skulle hackaren sedan kunna börja övervaka nätverket med verktyg som Betterrcap. I detta skede kartlägger och utforskar de målnätverket, men trafiken flyter fortfarande genom routern.

Nästan skulle hackaren använda ARP-spoofing för att omstrukturera nätverket internt. ARP, eller adressupplösningsprotokollet, används av enheter i ett nätverk för att associera MAC-adressen för en enhet med en IP-adress i nätverket. Bettercap skickar ARP-meddelanden som talar om för alla enheter i nätverket att hackarens dator är routern. Detta gör det möjligt för hackaren att avlyssna all nätverkstrafik som är avsedd för routern.

När all trafik har omdirigerats genom hackarens dator kan hackaren köra Bettercaps DNS-förfalskningsmodul. Denna kommer att leta efter alla förfrågningar till en måldomän och skicka ett falskt svar tillbaka till offret. Den falska begäran innehåller IP-adressen för hackarens dator och omdirigerar alla förfrågningar till målwebbplatsen till den phishing-sida som hackaren är värd för.

Nu kan hackaren se trafik som är avsedd för andra enheter i nätverket och omdirigera förfrågningar till vilken webbplats som helst. Hackaren kan se allt som offret gör på den här sidan, inklusive att samla in inloggningsuppgifter eller servera skadliga nedladdningar.

Om en hackare inte kan få tillgång till en lokal nätverksanslutning kommer de att tillgripa ett av följande angrepp.

Svarsförfalskning med hjälp av födelsedagsattacken

DNS autentiserar inte svaren på rekursiva förfrågningar, så det första svaret sparas i cacheminnet. Angripare använder ”födelsedagsparadoxen” för att försöka förutse och skicka ett förfalskat svar till den sökande. Denna födelsedagsattack använder matematik och sannolikhetsteori för att göra en gissning. I det här fallet försöker angriparen gissa transaktions-ID:t för din DNS-förfrågan, så att det förfalskade svaret med den förfalskade DNS-posten når dig före det riktiga svaret.

En födelsedagsattack är inte en garanterad framgång, men så småningom kommer en angripare att smyga in ett förfalskat svar i en cache. När attacken väl lyckas kommer angriparen att se trafik från den förfalskade DNS-posten tills TTL (time-to-live) löper ut.

Kaminsky’s Exploit

Kaminsky’s exploit är en variant av födelsedagsattacken som presenterades på BlackHat 2008.

För det första skickar angriparen till en målresolver en DNS-förfrågan för en obefintlig domän, till exempel ”fake.varonis.com”. Upplösaren vidarebefordrar sedan förfrågan till den auktoritativa namnservern för att få IP-adressen för den falska underdomänen. Vid denna tidpunkt översvämmar angriparen resolvern med ett stort antal förfalskade svar och hoppas att en av dessa förfalskningar matchar transaktions-ID:t för den ursprungliga frågan.

Om angriparen lyckas har han eller hon förgiftat DNS-cachen för den målinriktade resolvern med en förfalskad IP-adress för – i det här exemplet – varonis.com. Resolvern kommer att fortsätta att berätta för alla som frågar den att IP-adressen för varonis.com är den förfalskade förfrågan fram till TTL.

Hur man upptäcker DNS Cache Poisoning

Hur upptäcker man då en attack med DNS cache poisoning? Övervaka dina DNS-servrar för att hitta indikatorer på eventuella attacker. Människor har inte den datorkraft som krävs för att hålla jämna steg med den mängd DNS-förfrågningar som du måste övervaka. Tillämpa datasäkerhetsanalyser på din DNS-övervakning för att urskilja normalt DNS-beteende från attacker.

  • En plötslig ökning av DNS-aktivitet från en enda källa om en enda domän indikerar en potentiell Birthday-attack.
  • En ökning av DNS-aktiviteten från en enda källa som frågar din DNS-server om flera domännamn utan rekursion tyder på ett försök att hitta en post att använda för förgiftning.

Inom övervakning av DNS bör du också övervaka Active Directory-händelser och filsystemsbeteende för onormal aktivitet. Och ännu bättre, använd analyser för att korrelera aktivitet mellan alla tre vektorerna för att lägga till värdefull kontext till din cybersäkerhetsstrategi.

Hur man skyddar sig mot förgiftning av DNS Cache Poisoning

Bortom övervakning och analyser kan du göra konfigurationsändringar på din DNS-server.

  • Begränsa antalet rekursiva förfrågningar för att skydda dig mot potentiella riktade förgiftningsattacker.
  • Lagra endast data som är relaterade till den begärda domänen.
  • Begränsa svaren till att endast handla om den begärda domänen.
  • Tvinga klienter att använda HTTPS.

Se till att du använder de senaste versionerna av BIND och DNS-mjukvara, så att du har de senaste säkerhetskorrigeringarna.

Om det är möjligt, t.ex. när det gäller fjärranställda, ska du se till att alla fjärrklienter ansluter via en VPN för att skydda trafiken och DNS-förfrågningar från lokal snokning. Se dessutom till att uppmuntra till ett starkt Wi-Fi-lösenord för hemmet för att ytterligare minska risken.

Och slutligen, använd krypterade DNS-förfrågningar. Domain Name System Security (DNSSEC) är ett DNS-protokoll som använder signerade DNS-förfrågningar för att förhindra förfalskning. När DNSSEC används måste DNS-upplösaren verifiera signaturen med den auktoritativa DNS-servern, vilket gör hela processen långsammare. Detta har lett till att DNSSEC ännu inte har antagits i stor utsträckning.

DNS over HTTPS (DoH) och DNS over TLS (DoT) är konkurrerande specifikationer för nästa version av DNS för att hålla DNS-förfrågningar säkra utan att offra hastighet som DNSSEC. Dessa är dock inte perfekta lösningar eftersom de kan sakta ner eller helt förhindra att DNS-övervakning och -analys utförs lokalt. Det är också viktigt att notera att DoH och DoT kan kringgå föräldrakontroller eller annan blockering på DNS-nivå som utförs i nätverket. Cloudflare, Quad9 och Google har alla offentliga DNS-servrar som kan stödja DoT. Många nyare klienter kan stödja dessa nyare standarder men är inaktiverade som standard. Du kan hitta mer detaljerad information på Varonis blogg om DNS-säkerhet.

DNS-spoofing ersätter en legitim webbplats IP-adress med IP-adressen för en hackares dator. Det kan vara särskilt knepigt på grund av hur svårt det är att upptäcka, från slutanvändarens perspektiv har de lagt in en helt normal adress i URL-fältet i sin webbläsare. Det är dock inte omöjligt att stoppa det. Risken kan minskas genom övervakningsprogram som Varonis och genom att använda krypteringsstandarden DNS over TLS.

DNS Spoofing FAQs

På några vanliga frågor om DNS-spoofing finns svar nedan.

Q: Är DNS Cache Poisoning och DNS Spoofing samma sak?

A: Ja, DNS spoofing och caching avser samma cyberattack.

Q: Hur fungerar DNS Cache Poisoning?

A: DNS cache poisoning fungerar genom att lura DNS-servern att spara en förfalskad DNS-post. Trafiken till den förfalskade DNS-posten går till en server som angriparen väljer för att stjäla data.

Q: Vilka säkerhetsfunktioner kan användas för att skydda mot DNS Cache Poisoning?

A: Webbplatsägare kan införa övervakning och analys av DNS-spoofing. Detta inbegriper uppgradering av deras DNS-servrar för att använda DNSSEC eller ett annat krypteringssystem som DNS över HTTPS eller DNS över TLS. Användning av fullständig end-to-end-kryptering, t.ex. HTTPS, närhelst det är möjligt kan också förhindra spoofing. Cloud Access Security Brokers (CASB) är mycket användbara för detta.

Endanvändare kan återställa en potentiellt spoofad DNS-cache genom att spola webbläsarens DNS-cache med jämna mellanrum eller efter att ha anslutit sig till ett osäkert eller delat nätverk. Användning av en VPN kan skydda mot DNS-spoofing i ett lokalt nätverk. Genom att undvika misstänkta länkar kan man förhindra att slutanvändare utsätter webbläsarens cache för risker.

Q: Hur kan man kontrollera om det finns ett angrepp med förgiftning av DNS-cachen?

A: När DNS-cachen väl har blivit förgiftad kan det vara svårt att upptäcka. Det kan vara en bättre taktik att övervaka dina data och skydda dina system från skadlig kod för att skydda dig mot kompromisser orsakade av en förgiftad DNS-cache.

Kolla in Live Cyber Attack Lab för att se hur vi använder DNS-övervakning för att upptäcka riktiga cybersäkerhetshot.

Q: Hur fungerar DNS-kommunikationen?

A: När slutanvändaren skriver in en URL som ”Varonis.com” i sin webbläsare sker följande steg:

  1. Browsern kontrollerar först sin lokala cache för att se om den redan har lagrat DNS-data.
  2. Om webbläsaren inte har uppgifterna kommer den att fråga nästa uppströms-DNS-server, vilket normalt är routern i det lokala nätverket.
  3. Om routern inte har den nödvändiga DNS-posten i sin cache kommer den att använda en uppströms-DNSleverantör som Google, Cloudflare eller Quad9.
  4. Denna uppströms server tar sedan emot DNS-förfrågan och kontrollerar sin cache.
    • 4.1 Om den inte redan har DNS-data i cacheminnet startar den en rekursiv DNS-resolver som först frågar DNS-rotservrarna och frågar ”Vem hanterar .com?”
    • 4.2 Resolvern frågar sedan toppdomänservern för .com och frågar ”Vem hanterar Varonis.com?” TDL svarar sedan med en auktoritativ namnserver för URL:en.
    • 4.3 Upplösaren ställer sedan en fråga till den auktoritativa namnservern och frågar ”Vad är IP-adressen för Varonis.com?” Den auktoritativa namnservern svarar sedan med en IP-adress för domänen.

5. DNS-data skickas sedan tillbaka nedåt i kedjan till slutanvändarens enhet. Under hela vägen kommer varje DNS-server att cacha svaret för framtida användning.

Q: Hur förgiftar angripare DNS-cacher?

Det finns inte ett enda sätt att förgifta en DNS-cache, men några av de vanligaste sätten är: De vanligaste är att offret klickar på skadliga länkar som använder inbäddad kod för att ändra DNS-cachen i webbläsaren. Hackare kan också kapa den lokala DNS-servern genom att använda en man-in-the-middle-spoofing-attack. Attacken använder ARP-spoofing för att omdirigera DNS-förfrågningar till en DNS-server som kontrolleras av dem.

Q: Vad är DNS Cache Poisoning?

A: DNS Cache Poisoning innebär att man ersätter en post i en DNS-databas med en illasinnad IP-adress som skickar slutanvändaren till en server som kontrolleras av hackaren.

Q: Hur sker DNS Spoofing?

En hackare utför en DNS-spoofing-attack genom att få tillgång till och ändra en DNS-cache eller omdirigera DNS-frågor till sin egen DNS-server.

Q: Vad menas med DNS-spoofing?

DNS-spoofing innebär att den webbadress som en användare anger i sin webbläsare, till exempel varonis.com faktiskt inte går till den legitima IP-adress som är kopplad till den webbadressen, utan istället omdirigeras till en skadlig server som kontrolleras av en hackare.

Q: Varför är DNS-spoofing ett problem?

A: DNS-spoofing är ett problem eftersom DNS i sig är pålitlig och ofta inte är säkrad med någon form av kryptering. Detta innebär att en hackare kan förfalska en DNS-post och använda den för att stjäla data, smitta med skadlig programvara, nätfiske och förhindra uppdateringar.

Q: Vilka hot utgörs av en DNS-spoofing-attack?

Det främsta hotet från DNS-spoofing är datastöld genom användning av nätfiskesidor. Dessutom finns det ett hot om infektion av skadlig kod genom att värd för legitimt seende nedladdningar som i själva verket är infekterade med skadlig kod. Slutligen, om systemet är beroende av internet för uppdateringar kan uppdateringarna förhindras genom att ändra sina DNS-poster så att de inte löser upp till en verklig webbplats. Detta skulle också kunna tillämpas på vilken webbplats som helst som en metod för censur.

Lämna ett svar

Din e-postadress kommer inte publiceras.