» »

DNS amplification DDoS napad

DNS amplification DDoS napad

Slashdot - VeriSign je sporočil, da je bil med januarjem in februarjem 2006, skupaj z ostalimi približno 1500 organizacijami, žrtev DNS amplification oz. DNS reflector DDoS napada.

V "klasičnem" DDoS napadu napadalec uporabi n-število okuženih računalnikov (tim. "zombijev"), ki so najpogosteje povezani v botnet, ter nato v koordiniranem napadu na žrtvin IP naslov pošilja ogromno število SYN/UDP/ICMP paketkov (flood).

DRDoS (Distributed Reflector DoS) kakor so nekateri DNS amplification že poimenovali, deluje podobno kakor legendarni smurf napad, torej na principu "ojačevalca" (amplifier). Napadalec na DNS strežnik, kateri omogoča rekurzivno poizvedovanje, pošlje več tisoč ponarejenih DN zahtevkov, strežnik pa nato UDP odgovore (ti so zaradi principa delovanja DNS-ja amplificirani) pošlje na žrtvin naslov. Ranljivi so vsi DNS strežniki, ki imajo omogočeno rekurzivno poizvedovanje t. i. open resolvers.

Neodvisna raziskava, ki jo je izvedel Measurement Factory je pokazala, da je približno 75% DNS strežnikov na internetu odprtih, na voljo pa je tudi nekaj orodij, s katerimi lahko preverite vaše strežnike. V primeru napak, pa je ameriški US-CERT pripravil navodila, kako odprte DNS strežnike zapreti.

26 komentarjev

Spc ::

To sem že bral na vnunet-u kakšen teden nazaj.
Ta napad je resna zadeva katere se bomo težko izognili.
:\

Microsoft ::

A lahka kdo tole malo bolj opise, kako tale napad dela? Ne zastopim cisto, kdo je tisti, ki generira tolko prometa? Pa tudi delovanje.

Recimo, najprej posljes zahtevek na en DNS server. Kak je zdej primer ponarejenega DNja (DN kot domain name?)? In a pri tem, ko posljes zahtevek na ta server, ponaredis source IP naslov?
No, in potem verjetno ta DNS server poslje "vprasanje" na root DNSje, ker pri sebi nima odgovora. Kje je tu potem problem? Sej je to cisto normalno. Itka potem nazaj dobis odgovor, da ti server ni nasel tega imena.

Se slika, ce jst tole prav razumem:



by Miha
s8eqaWrumatu*h-+r5wre3$ev_pheNeyut#VUbraS@e2$u5ESwE67&uhukuCh3pr

Zgodovina sprememb…

  • zavaroval slike: kuglvinkl ()

MTm2H37rqt7B ::

Tukaj preverite v kaksnem stanju je vas DNS streznik.

DMouse ::

Ja, vsa fora je v spoofanem source naslovu in dejstvu, da je dns reply po količini podatkov večji od requesta. Če je recimo 3x večji, lahko v teoriji z 1mbit linijo DOSaš 3mbitno (ojačanje). Sam nevem kaj ma tukaj veze to, da je recursive... če napadalec ve, za katere domene je dns avtoritativen, lahko pač pošlje zahtevke za te domene... efekt je isti, pa še več zahtevkov lahko sprocesira, ker mu ni treba spraševat root serverjev. What am I missing here?

phantom ::

DNS deluje nekako takole:

če hočemo razrešiti naslov www.slo-tech.com, se najprej na naš DNS pošle zahteva. Če ga ta ne zna razrešit, se naprej pošlje na root DNS. Ta vidi, da naslov pripada domeni "com", zato pošlje zahtevek naprej na root server za .com domene (a to kaj diši po rekurziji?). Ta vidi, da je poddomena "slo-tech", zato zahtevek na slo-techov DNS server (a to že kaj bolj spominja na rekurzijo?). Ta spet prebere poddomeno "www" in vrne IP.

http://en.wikipedia.org/wiki/Dns

Tako obremenimo vse DNS serverje, ki sodelujejo v tej verigi.
~
~
:wq

jype ::

What DMouse said.

To ni napad na rekurzivne streznike, ampak napad na dojemljivost UDP protokola na "spoofanje" izvornega naslova.

Edina obramba pred takim napadom je routing path filtering na strani vsakega ISPja. In ce najdem koga, ki tega ne pocne, ga bom z veseljem nekam sunil.

Microsoft ::

Se pravi, da ce ne spoofas source IP in sprasujes po neobstojecih domenah, DRDoS-as samega sebe.

Sem pa zdele poskusu naredit nslookup na eno nebostojeco domeno (c.b.a.com) in sem pogledal pakete. Skupaj so bili stirje paketi, dva sem dobil, dva oddal. Velikost paketa, ki sem ga oddal DNS serverju, je bil 69Byte, velikost paketa, katerega sem prejel, pa 142Byte. Je pol ta razlika misljena kot "ojacevanje"?


by Miha
s8eqaWrumatu*h-+r5wre3$ev_pheNeyut#VUbraS@e2$u5ESwE67&uhukuCh3pr

Zgodovina sprememb…

BladE_ ::

Najleps je na mIRCu tejkat kanale :D :D
Akcija - Reakcija

Tic ::

http://www.dnsreport.com/tools/dnsreport.ch?domain=<b>www.slo-tech.com</b>

S klikom na sliko sem našel pa še tole.

Site Stats for slo-tech.com:


Average Traffic Rank: 75,704
Other sites that link to this site: 42
Speed: Very Slow (4th percentile):D
Online Since: April 21, 2000
ASIN: B0000ACV5Y

Zgodovina sprememb…

  • spremenil: Tic ()

kronik ::

Uporabniki BINDa, si dodajte stavek recursion no; v svoj named.conf

view "external-in" in {
recursion no;
zone "." in {
type hint;
file "root.cache";
};
...
}

Microsoft ::

Samo za ISPje pa to ja ni resitev? No, sploh nimajo resitve. Razen, da preverijo, da IP ni spoofan.

Enivej, za Windowse. Odpres DNS mmc > Properties od serverja > tab Advanced > pod Server options dodas klukco pred Disable recursion (also disables forwarders).


by Miha
s8eqaWrumatu*h-+r5wre3$ev_pheNeyut#VUbraS@e2$u5ESwE67&uhukuCh3pr

Mr.B ::

Raje kak konkreten FW, tudi pomaga...
France Rejects Genocide Accusations Against Israel in Gaza,
To accuse the Jewish state of genocide is to cross a moral threshold

jype ::

ISPji tocno vejo, katera omrezja IP so "njihova", tako da lahko recursion/forwarding vkljucijo zgolj za ta omrezja. Bind views so super orodje za pocet take reci. Se bolj nujno je, da njihovih omrezij nikoli ne zapusti paket, ki izvira iz nekega drugega omrezja. Ko bom jaz diktator sveta, bo kaj taksnega hudo kaznivo dejanje.

Mr.B: kaksen firewall? To pomaga ravno tolk, kot ce izkljucis mrezni (ali se bolje power) kabel.

Problem windows DNS streznika je, da ne mores rekurzije izkljucit samo za dolocena omrezja IP in moras tako postaviti dva DNS streznika: enega za rekurzijo za lokalno omrezje, drugega pa kot non-recursive za authoritative streznik za tvoje domene. Pa se tretjega, ki je sekundarec za domene, ampak tega moras ne glede na orodje.


Bistvo napada je, da so DNS odgovori, ki letijo na spoofan IP, vecji od zahtevkov. Napad zlorablja lastnost UDP protokola in lastnosti DNS protokola v kombinaciji, ki je zoprno dojemljiva za taksne napade, hkrati pa jo je prakticno nemogoce zaznat, ce se napad dovolj distribuira (na dovolj razlicnih DNS streznikov). Sploh ni vazno, ali je rekurzija vkljucena ali ne, ker vedno lahko te spoofane pakete posiljamo na avtoritativne streznike.

Zgodovina sprememb…

  • spremenilo: jype ()

Mr.B ::

Govorim o pravilno nastavljenem firewalu, ki gre dejansko gledati, od kje je prišla adressa in ne odgovarja na blank, ...
France Rejects Genocide Accusations Against Israel in Gaza,
To accuse the Jewish state of genocide is to cross a moral threshold

denial ::

SELECT finger FROM hand WHERE id=3;

jype ::

Mr.B: in kako lahko nastavis firewall, da ugotovi, od kje je prisla "adressa" ?

Ne da se.

Tvoj DNS streznik mora odgovoriti na _vsako_ poizvedbo, za katero je avtoritativen (ali pa ni DNS streznik).

Dejstvo je, da DNS streznik ne more vedet, ali je paket prisel z naslova, ki je zapisan kot izvorni naslov. Edini, ki lahko to filtrira, je ISP. Dokler tega ne filtrirajo _vsi_ ISPji, je stvar mogoca.

Mr.B ::

Veš najprej pride zahteva na firewall, ta naredi poizvedbo, skje je dejansko paket prišel, in odvisno od rezultata, spusti query naprej, ali pa ne odgovori..Pač windows firewall, ti tega ne bo naredil....
France Rejects Genocide Accusations Against Israel in Gaza,
To accuse the Jewish state of genocide is to cross a moral threshold

jype ::

Cak mal, zdej pa ze kozle strelas.

Kje je firewall? Na kaksen firewall pride zahteva in predvsem kaksna zahteva? Kako firewall "naredi poizvedbo" skje je dejansko paket prisel?

Mr.B ::

Na kak način lahko preveriš če je naslov spufan ?
France Rejects Genocide Accusations Against Israel in Gaza,
To accuse the Jewish state of genocide is to cross a moral threshold

Microsoft ::

Jst tole razumem kot da je en über firewall postavljen pred DNS server. Ta firewall pac (sicer nevem kako) ugotovi, iz kje je zahtevek prisel. Ce je "od tvojih", spusti naprej, sicer pa ne.

Drgace je pa tudi cudno, da ISPji pustijo spoofanje IPjev. To bi morali vsi blokirati, hkrati pa tiste, ki bi to poceli, kaznovati!


by Miha
s8eqaWrumatu*h-+r5wre3$ev_pheNeyut#VUbraS@e2$u5ESwE67&uhukuCh3pr

jype ::

Mr. B: na cilju se to ne da. To lahko preverjas zgolj na firewallu za omrezje, iz katerega paket izvira. Napadalec seveda ne bo samemu sebi nastavil firewalla tako, da ne bo mogel ven posiljat spoofanih paketov.

Lej, bom zdaj jaz orisal primer.

Imas streznik DNS (avtoritativni) za domena.com.

Nekdo, ki hoce na dolocen naslov poslat flood, bo poslal tvojemu (in se 500 drugim) strezniku zahtevo za recimo "SOA domena.com". Tvoj streznik bo, jasno, odgovoril (ce ne bo, potem domena ne deluje). Tvoj DNS streznik _NE MORE_ vedeti, od kod paket prihaja, razen seveda po izvornem naslovu paketa, ki pa je lahko "spoofan", torej drugacen, kot je naslov racunalnika, ki je paket poslal. Odgovor bos vedno poslal kot paket UDP na naslov, ki je bil v paketu poizvedbe naveden kot izvorni naslov. Ker bo odgovor vecji od poizvedbe, se temu rece "amplification attack", torej napad, pri katerem lahko z recimo 1M dsl linkom popolnoma zabases 4M dsl link svojega soseda, ki ga ne maras.

Nihce, razen napadalcevega ISPja in njega samega, ne more filtrirati teh paketov.

Mr.B ::

Imaš prav.
Lahko pa izbereš drugo strategijo: Preveriš, koliko paketkov na sekundo zdrži tvoja pipca pa omejiš število paketkov.
In rečes za DNS promet sme iti maximalno 30%, za SMTP 20% za Emulo 10% itd...Ma naj ti pošiljajo zadeve, pač ne odgovoriš...
France Rejects Genocide Accusations Against Israel in Gaza,
To accuse the Jewish state of genocide is to cross a moral threshold

Roadkill ::

Ampak, ko zaradi DDoS napada ti zahtevki presežejo vse meje, bo ta FW spuščal random stvari skozi, ostale pa blokiral. Torej bo blokiral tudi vse tiste, ki so zate dejansko uporabni in namen DDoSa bo dosežen.
Ü

jype ::

Mr.B: saj napadalec ne napada DNS streznika.

DNS streznik samo uporabi kot ojacevalnik, ker DNS streznik odgovori z vec prometa, kot ga je napadalec poslal. Ce je kolickaj brihten tudi pazi, da omeji stevilo zahtevkov za posamezni DNS streznik, zato da ne doseze "sumljive kolicine prometa" in pac napad razdeli med vec DNS streznikov. Ker je DNS streznikov po internetu vec kot listja in trave tak napad ni pretirano kompliciran in ga je prakticno nemogoce prepreciti.

Ena resitev je uporaba "stateful" protokola, kjer si s streznikom izmenjas syn/synack/ack, kar pa seveda pomeni precej vecjo latenco pri DNS poizvedbah.

Druga resitev je strogo kaznovanje ISPjev, ki ne delajo routing path filteringa kjerkoli se to da.

MrStein ::

Ali pa IPSec v vsako vas !
;)
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

jype ::

Ja, verjetno se najboljsa ideja, manjka samo se authority, ki bo podpisoval vse zivo, pa vsi mu bomo zaupali :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Telemachovo blokiranje portov

Oddelek: Omrežja in internet
368009 (6573) BlaY0
»

Brian Krebs žrtev največjega napada DDoS v zgodovini

Oddelek: Novice / Varnost
249257 (5836) OK.d
»

Težave z DNS strežnikom

Oddelek: Omrežja in internet
314220 (3412) Bakunin
»

Kaj mi je storiti? DOS attack (strani: 1 2 )

Oddelek: Omrežja in internet
506230 (4934) SaXsIm
»

DNS amplification DDoS napad

Oddelek: Novice / Varnost
265667 (4395) jype

Več podobnih tem