Haktivistički pokret Anonymous je najavio da će danas 31. marta 2012. „pomračiti" Internet. Operacija je nazvana Operation Global Blackout. Suština napada je u korišćenju napadačke tehnike zvane „DNS amplification" (pojačanje). Ova tehnika bi trebala da "otme" ili onesposobi važan integralni deo globalnog korenskog Internet adresara, pretvarajući relativno mali tok zahteva od napadačkih mašina u bujicu podataka poslanih ciljnim mašinama. To bi moglo dovesti do ogromnog saobraćaja bez otkrivanja izvora napada. Ovo je posledica mogućnosti iskorištavanja ranjivosti DNS usluge koja je poznata od 2002. godine
Priličan broj ljudi mi se obratio prethodnih dana sa pitanjem „Šta će biti?", kao i sa pitanjem „Kako mogu da sruše Internet?" U ovom tekstu analiziram zašto i kako se ovo „pomračenje" Interneta (neće) desiti. Naravno, ne pretendujem da sam u pravu, pa je tekst i poziv na diskusiju na ovu temu.
Pre Interneta
Priča o pomračenju Interneta me podsetila na nešto što smo učili iz fizike vezano za kretanje talasa, rezonanciju i opasnosti koje ona može da proizvode, Tesline eksperimente, opasnosti sinhronizovanog skoka svih Kineza...
Mehanički talas se prenosi kroz sve materijalne tvorevine određenom brzinom, kao talas po vodi. Kada dođe do svog kraja putovanja (kraja predmeta), on se vraća nazad i u određenom obliku i delimično smanjenog intenziteta, vraća se i ka tački izvorišta primarnog talasa. Ukoliko u tom trenutku, kada se talas vraća u izvorište, na istom mestu ponovimo mehanički poticaj još jednog talasa, tada dobijamo združene energije prvog oslabljenog i novopotaknutog talasa. Ako ovo ponovimo više puta, mehanički talas postaje sve jači po intenzitetu i počinje da uništava i lomi materiju kroz koju se prostire. Ovo se u fizici naziva iterferencija talasa. Neka mi fizičari ne zamere na pojednostavljenoj i ne baš preciznoj intepretaciji (učio sam ovo prilično davno).
Nikola Tesla je, kažu, jednom izjavio, da bi planeta Zemlja mogla da se uništi za kratko vreme, baš po ovom principu. Ne bih ulazio u to kako i čime bi se ovaj talas pokrenuo i obnavljao dok ne dovede do rezonancije i katastrofalnog efekta. Iz istog razloga vojnici ne smeju da marširaju do se kreću preko mostova, da ne pogode istu frekvenciju koraka, kao što je oscilovanje mosta i time da ga sruše.
Ako bi svi Kinezi u istom trenutku poskočili i to ponovili u tačno određenim razmacima po komandi, bila bi to najveća kataklizma koja može da se zamisli. Bolje da to nikad ne probamo i ne iskusimo. Bar tako se priča.
Ako bi svi vlasnici računa pohrlili u banke da podignu novac, banke bi ubrzo ostale bez novca i finansijski sistem bi kolapsirao. Ako bi svi vlasnici telefona odlučili da u istom trenutku podignu slušalice i pozovu nekoga, telefonski sistem ne bi mogao da izdrži toliki pritisak.
Internet serveri
Tako i serveri na Internetu teško da mogu da izdrže ogromnu navalu koja bi se prema njima usmerila. Recimo da imate svoj Web sajt na Internetu i, u nekom trenutku, stotine hiljada ljudi odluči da poseti Vaš sajt, teško da će on odgovoriti svima. Ako je brzina veze i propusna moć nedovoljna, performanse servera male, onda će on usporiti, a ako ovo potraje i prestati da odgovara.
Napadi se često obavljaju kao napada odbijanjem usluge (engl. DoS, Denial of Service) i distribuirani DoS (DDoS). Napad se obavlja uz učešće velikog broja ljudi odnosno računara koji u njemu učestvuju iz raznoraznih razloga.
Međutim, moguće je da učestvujete u ovom napadu, a da čak i da niste toga svesni. Naime, Vaši računari mogu biti zaraženi zlonamernim kodom koji omogućava udaljenim hakerima da njima upravljaju, pa i da uzmu učešća u napadu. Dakle, možda ste i Vi, dragi čitaoci, učesnici u napadima, a da to i ne znate. Zato, vodite računa o sigurnosti Vaših računara.
Nedavno je firma Imperva objavila interesantna grafik koji prikazuje anatomiju napada koje vrše Anonymousi.
Takođe, na mnogo mesta je objavljeno i diskutovano na koji način ova haktivistička grupa namerava da "pomrači Internet" danas 31. marta 2012.
Slabosti DNS servera
Dosadašnje vesti kažu da će biti korišćen napadačka tehnika zvana DNS amplification. Ova tehnika bi trebala da "otme" ili onesposobi važan integralni deo globalnog „korenskog Internet adresara", pretvarajući relativno mali tok zahteva od napadačkih mašina u bujicu podataka poslanih ciljnim mašinama. Ovo može dovesti do ogromnog saobraćaja bez otkrivanja izvora napada. Ovo je posledica mogućnosti iskorištavanja ranjivosti DNS usluge koja je poznata od 2002. godine.
DNS sistem je hijerarhijski organizovan. Na vrhu hijerarhije su korenski serveri „imenici" (root Nameservers). Oni sadrže informacije o tome gde naći servere sa "imenicima" odgovorne za sledeći nivo u hijerarhiji, tj. servere imena za domene kao što su .com, .org, .net, pa i naš .rs. Ovi nameserveri sadrže informacije o sledećem nivou hijerarhije, pa ".net" nameserver pruža informacije o tome gde da pronađete "b92.net" nameserver. Ovaj nameserver je onda u stanju da obezbedi stvarno mapiranje iz opisnog imena u numeričke IP adrese.
Izvršavanje uvida u DNS (DNS Lookup) zahteva pristup svim ovim različitim nivoima hijerarhije. Postoje dva načina da DNS resolveri mogu da rade: iterativni i rekurzivno režim. Resolver je funkcija tj. komad softvera koji gleda DNS unose, što može biti samostalna funkcija na klijentskom računaru, ili deo DNS servera.
U iterativnom režimu, resolver prvo pita root DNS servere za nameservere najvišeg nivoa domena, a zatim pita nameservere najvišeg nivoa domena za nameservers drugog nivo domena, i tako dalje. Resolver kontaktira različite nameservers direktno, jedan po jedan, dok ne nađe odgovor ili odustaje ako odgovor ne postoji.
U rekurzivnom režimu, posao resolver je mnogo jednostavniji: on pita jedan DNS server za celo ime, onda ostavlja serveru da izvrši sve potrebne zahteve (ili rekurzivno ili iterativnio) u njegovo ime.
Tipično, DNS resolveri ugrađeni u sisteme klijentskim operativnim sistemima će pitati nameservere (obično one koje pružaju ISP) da obave rekurzivne upite na njihovo ime. Lookupi koje tada obavljaju ovi serveri, da bi ispunili zahteve, su obično iterativni.
I tu nastaje priličan problem. Odgovor na DNS upit može da bude znatno veći od samog upita. U najboljem (ili najgorem) slučaju, upit od samo nekoliko desetina bajtova može rezultirati odgovorom od nekoliko storina ili hiljade bajtova u odgovoru. Svaki zahtev poslat DNS serveru sadrži izvorišnu adresu - IP adresu na koju treba poslati odgovor - ali ove izvorišne adrese mogu biti lažne (engl. spoofed). Time zahtev se može poslati sa jedne IP adrese, a DNS server će misliti da je poslana sa neke druge adrese.
Koristeći ove dve stvari - rekurzivne lookupe koje daju velike količine podataka na male upite, i lažne izvorne adrese - napadi mogu biti ostvareni. Napadač prvo nađe server koji je konfigurisan da omogući rekurzivne lookupe. On onda šalje veliki broj zahteva tom serveru, lažirajuči izvornu adresa (spoofing) mašine "žrtve" za koju server misli da ona upućuje zahtev. Svaki od ovih zahteva je izabran tako da generiše veliki odziv, mnogo veće od samih upita. Server će zatim poslati ove velike odgovore ka zaraženom kompjuteru i može ga „preplaviti" saobraćajem. Disparitet između veličine zahteva i odgovora je zašto su ovi napadi su poznati kao napadi sa "pojačanjem" ("amplification" attacks).
Iako postoji konsenzus da na javno dostupnim DNS serverima treba da onemogućena rekurzija, upravo da se izbegne ova vrsta problema, realnost je da to nisu svi ili mnogi ne rade. Obzirom na dovoljno servera koji omogućavaju rekurzije, velike količine saobraćaja može biti proizveden od relativno skromnih broja upita.
Koliko zaista ima root DNS servera?
U svojevrsnom proglasu koji je postavljen na Pastebinu, od strane nekoga ko se predstavlja kao član haktivističke grupe Anonymous se tvrdi, između ostalog, da postoji samo 13 root DNS servera na Internetu. Oni tvrde da „odsecanjem" ovih servera niko neće moći da izvrši domain name lookup i, obzirom da je HTTP protokol najviše korišćena funkcija (nema surfovanja bez ovog protokola), može se smatrati da nema niti Interneta. Takođe, kažu da su razvili alatku zvanu Reflective DNS Amplification DDoS tool koja će biti korišćena u ovom napadu.
Da li postoji samo 13 root servera? Sudeći po tekstu There are not 13 root servers ovo je jedan od urbanih mitova.
Zaključci
Evo nekoliko razmišljanja ili zaključaka u vidu pitanja i odgovora.
• Da li će biti „pomračenja" Interneta ovih dana? - Ne verujem da će biti u skorašnje vreme. Možda će biti pokušaja, može biti i povremenih problema, usporenja, kašnjenja odgovora, možda napada na određene sajtove, segmente mreže, domene, ali potpunog globalnog pada ne verujem da može biti.
• Da li može da se ostvari pretnja? - Može, u velikoj meri, ako bi akcija neke haktivističke grupe dobila dovoljno široku i masovnu podršku u budućnosti, a pre nego se razviju dovoljno dobre mere, tehnike i prakse zaštite, kao što je to pomenuto na početku. Za tu podršku potrebne su i određene globalne društvene okolnosti, nezadovoljstvo i slično. Može se desiti i otkrivanje neke do sada nepoznate ranjivosti koja bi se mogla iskoristiti za napad velikih razmera.
• Da li opasnost ostaje i dalje? - Da, izvestan stepen opasnosti ostaje. Rekao bih da se preko Interneta lome različiti interesi i različita društvena i druga nezadovoljstva širom sveta. Zato je Internet postao i biće dugo vremena dobro sredstvo i dobra meta. U osnovi, Internet je pogodno mesto za „lomljenje ruku" i interesnu borbu između različitih društvenih grupa.
• Šta uraditi? - Pretnje, koliko god neugodne, mogu imati i pozitivne rezultate. Naime, one su dobar razlog za pojačavanje bezbednosti, razvijanje novih mehanizama zaštite koji će biti od koristi u nekim drugim situacijama, a koje bi se mogle dogoditi sutra ili za nekoliko meseci. A ako postoji veoma veliki broj ljudi koji su spremni da napadnu, treba dobro razmisliti da li je moguće da svi oni nisu u pravu i da li postoji neki stvarni i objektivni uzrok tog nezadovoljstva.
I na kraju, na Twitteru je još u četvrtak @YourAnonNews napisao: "For the billionth time: #Anonymous will not shut down the Internet on 31 March."
Napomena: U ovom tekstu sam neke tehničke detalje svesno pojednostavio, da bih ih učinio lakšim za razumevanje. Takvo pojednostavljenje često dovodi do manjka preciznosti. Stoga će tehnički i naučno verzirani za oblast o kojoj pišem sigurno imati šta da dodaju na ovu priču i razjasne detalje.