En av funktionerna i Chromium skapar en enorm belastning pÄ de primÀra DNS-servrarna

En av funktionerna i Chromium skapar en enorm belastning pÄ de primÀra DNS-servrarna

WebblÀsaren Chromium, som Àr en aktivt utvecklad open-source-version av Google Chrome och nya Microsoft Edge, har uppmÀrksammats för en funktion som ursprungligen var avsedd för gott: den kontrollerar om anvÀndarens leverantör "stjÀl" ogiltiga sökresultat frÄn domÀner.

Intranet Redirect Detector, som skapar falska förfrÄgningar till slumpmÀssiga "domÀner" vars existens statistiskt sett Àr osannolik, stÄr för ungefÀr hÀlften av den totala trafik som tas emot av de rot-DNS-servrar som finns över hela vÀrlden. Ingenjör vid Verisign, Matt Thomas, skrev en utförlig inlÀgg post pÄ APNIC-bloggen som beskriver problemet och bedömer dess omfattning.

Hur DNS-upplösning vanligtvis utförs

En av funktionerna i Chromium skapar en enorm belastning pÄ de primÀra DNS-servrarna
Dessa servrar Àr den högsta instansen som bör kontaktas för att lösa .com, .net och sÄ vidare, för att informera er om att frglxrtmpuf inte Àr en toppdomÀn (TLD).

DNS, eller Domain Name System ("domÀnnamnssystem"), Àr ett system som gör att datorer kan översÀtta minnesvÀrda domÀnnamn som arstechnica.com till mycket mindre anvÀndarvÀnliga IP-adresser, sÄsom 3.128.236.93. Utan DNS skulle Internet inte kunna existera i en anvÀndarvÀnlig form, vilket innebÀr att onödig belastning pÄ toppinfrastrukturen Àr ett verkligt problem.

För att ladda en enda modern webbsida kan en otrolig mÀngd DNS-sökningar krÀvas. Till exempel, nÀr vi analyserade ESPN:s startsida, rÀknade vi 93 olika domÀnnamn, frÄn a.espncdn.com till z.motads.com. Alla dessa behövs för att fullstÀndigt ladda sidan!

För att ett söksystem som mĂ„ste betjĂ€na hela vĂ€rlden ska kunna klara denna belastning, Ă€r DNS utformat som en flerlagershierarki. PĂ„ toppen av denna pyramid finns rotservrarna – varje toppdomĂ€n, till exempel .com, har sin egen familj av servrar som Ă€r den högsta instansen för varje domĂ€n under dem. En nivĂ„ upp frĂ„n dessa servrar Ă€r sjĂ€lva rotservrarna, frĂ„n a.root-servers.net till m.root-servers.net.

Hur ofta hÀnder detta?

Tack vare den flerstegs cachningshierarkin i DNS-infrastrukturen nÄr endast en mycket liten procent av vÀrldens DNS-förfrÄgningar de primÀra rotservrarna. De flesta fÄr DNS-informationen direkt frÄn sin leverantör. NÀr en anvÀndares enhet behöver ta reda pÄ hur man nÄr en specifik webbplats skickas förfrÄgan först till en DNS-server som hanteras av den lokala leverantören. Om den lokala DNS-servern inte har ett svar, vidarebefordrar den förfrÄgan till sina egna "vidarebefordringsservrar" (om sÄdana anges).

Om varken DNS-servern hos den lokala leverantören eller de vidarebefordringsservrar som anges i dess konfiguration har ett cachelagrat svar, höjs förfrÄgan direkt till den auktoritativa servern för domÀnen metoden. som du försöker omvandla. I sÄ fall domen.com innebÀr detta att förfrÄgan skickas till de auktoritativa servrarna för sjÀlva domÀnen com, som finns pÄ adressen gtld-servers.net.

Systemet gtld-servrar, som förfrĂ„gan gjordes till, svarar med en lista över auktoritativa namnservrar för domĂ€nen domen.com samt minst en bindande post som innehĂ„ller IP-adressen för en sĂ„dan namnserver. Sedan sĂ€nds svaren ner i kedjan — varje vidarebefordringsserver skickar dessa svar ner till den server som begĂ€rde dem, tills svaret Ă€ntligen nĂ„r den lokala leverantörens server och anvĂ€ndarens dator. Alla cachar detta svar för att inte behöva störa system pĂ„ högre nivĂ„er.

I de flesta fall kommer namnserverregistreringarna för domen.com redan att vara cacherade pĂ„ en av dessa vidarebefordringsservrar, sĂ„ rotservrarna störs inte. Men medan vi pratar om den typ av URL vi Ă€r vana vid — den som omvandlas till en vanlig webbplats. FörfrĂ„gningar frĂ„n Chrome rör nivĂ„ metoden. detta, pĂ„ steg av sjĂ€lva klusterna root-servers.net.

Chromium och NXDomain-hijackningskontroller

En av funktionerna i Chromium skapar en enorm belastning pÄ de primÀra DNS-servrarna
Kontrollerna i Chromium "lurar inte denna DNS-server mig?" utgör nÀstan hÀlften av all trafik som nÄr klustret av rot-DNS-servrar frÄn Verisign.

WebblÀsaren Chromium, moderprojektet för Google Chrome, den nya Microsoft Edge och otaliga mindre kÀnda webblÀsare, vill ge anvÀndarna enkelhet i att söka i ett fÀlt som ibland kallas "Omnibox". Med andra ord skriver anvÀndaren bÄde verkliga URL:er och sökfraser i samma textfÀlt högst upp i webblÀsarfönstret. För att ytterligare förenkla processen krÀver den inte att anvÀndaren skriver in en del av URL:en. http:// eller https://.

Hur praktiskt det Ă€n mĂ„ vara, krĂ€ver denna metod att webblĂ€saren förstĂ„r vad som ska betraktas som en URL och vad som Ă€r en sökfrĂ„ga. I de flesta fall Ă€r det ganska uppenbart; till exempel kan en strĂ€ng med mellanslag inte vara en URL. Men det kan bli mer komplicerat nĂ€r intranĂ€t beaktas – privata nĂ€tverk som ocksĂ„ kan anvĂ€nda privata toppdomĂ€ner för att lösa riktiga webbplatser.

Om en anvÀndare i företagets intranÀt skriver "marketing" och det finns en intern webbplats med samma namn, visar Chromium ett meddelande som frÄgar anvÀndaren om de vill söka pÄ "marketing" eller gÄ till https://marketing. Det Àr okej, men mÄnga internetleverantörer och offentliga Wi-Fi-leverantörer "kapar" varje felstavad URL genom att omdirigera anvÀndaren till nÄgon reklamfylld sida.

Slumptalsgenerering

Utvecklarna av Chromium ville inte att anvÀndare i vanliga nÀtverk skulle se ett meddelande som frÄgade vad de menade vid varje sökning av ett enda ord, sÄ de implementerade ett test: nÀr webblÀsaren startas eller nÀr nÀtverket Àndras gör Chromium DNS-sökningar pÄ tre slumpmÀssigt genererade toppdomÀner som Àr mellan sju och femton tecken lÄnga. Om nÄgra tvÄ av dessa förfrÄgningar returneras med samma IP-adress, antar Chromium att det lokala nÀtverket "kapar" felen. NXDOMAIN, som det bör ta emot, sÄ webblÀsaren antar utan vidare meddelande att alla inmatade förfrÄgningar av ett enda ord Àr sökförsök.

TyvÀrr, i nÀtverk som inte kapar DNS-förfrÄgningar, lyfts dessa tre operationer vanligtvis högst upp, Ànda tills sjÀlva rotserverarna: den lokala servern vet inte hur den ska konvertera qwajuixk, dÀrför vidarebefordrar den hÀr begÀran till sin omdirigeringsserver, som gör detsamma, tills till slut, a.root-servers.net eller en av dess "syskon" tvingas sÀga "FörlÄt, men det Àr ingen domÀn".

Eftersom det finns ungefÀr 1,67*10^21 möjliga falska domÀnnamn mellan sju och femton tecken, Àr det oftast varje av dessa tester, gjorda i ett "Àrligt" nÀtverk, nÄr rotservern. Det utgör faktiskt hÀlften av den totala belastningen pÄ rot-DNS:en, om man ska tro statistiken frÄn den del av klustren root-servers.net, som tillhör företaget Verisign.

Historien upprepar sig

Det Ă€r inte första gĂ„ngen som ett projekt skapat med de mest Ă€dla avsikter misslyckas eller nĂ€stan misslyckas med att belasta en offentlig resurs med onödig trafik – det pĂ„minner oss om den lĂ„nga och sorgliga historien om D-Link och NTP-servern (Network Time Protocol) Paul-Henning Camps under mitten av 2000-talet.

År 2005 fick FreeBSD-utvecklaren Poul-Henning, som ocksĂ„ hade den enda NTP-servern Stratum 1 i Danmark, en överraskande och stor rĂ€kning för överförd trafik. I korthet berodde orsaken pĂ„ att D-Link:s utvecklare hade hĂ„rdkodat adresser till NTP-servrar av Stratum 1, inklusive Camps server, i firmware för företagets switchar, routrar och Ă„tkomstpunkter. Detta ökade omedelbart trafikmĂ€ngden till Camps server med nio gĂ„nger, vilket ledde till att Danish Internet Exchange (Danmarks Internettrafikbyte) Ă€ndrade hans tarif frĂ„n "Gratis" till "9 000 dollar per Ă„r".

Problemet var inte att det fanns för mĂ„nga D-Link-routrar, utan att de "bröt hierarkin". Precis som med DNS, mĂ„ste NTP fungera i en hierarkisk struktur – servrar av Stratum 0 överför information till servrar av Stratum 1, som i sin tur överför information till servrar av Stratum 2, och sĂ„ vidare ner i hierarkin. En vanlig hemrouter, switch eller Ă„tkomstpunkt liknande de som D-Link hĂ„rdkodade adresser till NTP-servrar i, borde ha skickat förfrĂ„gningar till en server av Stratum 2 eller Stratum 3.

Projektet Chromium, med de mest Àdla avsikter, upprepade NTP-problemet med DNS, genom att överbelasta Internets rotservrar med förfrÄgningar som de aldrig skulle ha hanterat.

Det finns hopp om en snabb lösning

I projektet Chromium finns det en öppen bugg, som krÀver att Intranet Redirect Detector stÀngs av som standard för att lösa detta problem. Man mÄste ge projektet Chromium erkÀnnande: buggen upptÀcktes innan, som Matt Thomas frÄn Verisign drog stort fokus pÄ med sin ett inlÀgg pÄ APNIC:s blogg. Buggen rapporterades i juni, men förblev bortglömd fram till Thomas inlÀgg; efter inlÀgget började den fÄ noggrant uppsyn.

Det finns hopp om att problemet snart kommer att lösas, sÄ att de primÀra DNS-servrarna inte lÀngre behöver svara pÄ cirka 60 miljarder falska förfrÄgningar varje dag.

I reklamens namn

Episk server — detta Ă€r VPS med Windows eller Linux med kraftfulla processorer frĂ„n AMD EPYC och mycket snabba NVMe-diskar frĂ„n Intel. Skynda dig att bestĂ€lla!

En av funktionerna i Chromium skapar en enorm belastning pÄ de primÀra DNS-servrarna

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster