Útoky na DNS
Ondřej Caletka
9. února 2016
Uvedené dílo podléhá licenci Creative Commons Uveďte autora 3.0 Česko.
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 1 / 16
DNS: minutes to learn,a lifetime to master
Shane Kerr
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 2 / 16
Odrazný a zesilující útokzaloženo na falšování zdrojových adresútočník posílá dotazy jménem obětiobět dostává nevyžádané odpovědi
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 3 / 16
Příčinou je falšování zdrojových adres
k útoku lze použít jakýkoli protokolrozdíly v paketovém a bajtovém zesilovacím faktoru
protokol zesílení bajtů zesílení paketůDNS 28–54 1–5NTP 556,9 100
SNMPv2 6,3SSDP 30,8Quake 63,9Steam 5,5TCP 1 1
zdroj: US-CERT TA14-017A
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 4 / 16
DNSSEC za nic nemůže
There’s a lot of urban legend out there abouthow DNSSEC makes DDoS worse because ofDNSSEC’s larger message size, and while thismakes intuitive sense and ”sounds good”, it issimply false. (…) In short, no attack requiresDNSSEC, and thus any focus on DNSSEC asa DDoS risk is misspent energy.
zdroj: Paul Vixie na dotaz „What kinds of security vulnerabilities does providing DNSSEC expose?“
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 5 / 16
Jak problém řešit?
1 zabránit falšování zdrojových adresBCP 38, BCP 84TODO: přemluvit všechny na světěpozitivní vliv NATů
2 omezit zbytné velké odpovědipřidat další komplexitu do existujících protokolů
3 dělat obojí aspoň napůlbráníme falšování ve vlastní síti, abychom nebylizdrojem útokuzabezpečujeme služby, aby neodrážely víc, než jenezbytně nutné
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 6 / 16
Omezení zesilovacího efektu
rekurzivní serverypovolujeme pouze z vlastní sítě
autoritativní serveryzapínáme response rate limitingomezujeme výchozí velikost UDP bufferu
Response Rate LimitingObecná technika limitování odpovědí autoritativních serverůna opakující se dotazy ze stejné adresy. Implementovánonativně v Knot DNS, NSD a BIND 9.9.
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 7 / 16
DNS cookies pro efektivnější RRL
návrh rozšíření protokolu DNS o jednoduchouautentizaci klientů a serverů s postupným zaváděnímklient vygeneruje a pošle s dotazemccookie = f(csecret, server IP)server vygeneruje a vrátí s odpovědíscookie = f(ssecret, ccookie, client IP)klient dále přidává ccookie i scookie k dotazům,takže je jisté, že nejde o zfalšovanou adresupokud cookie nesouhlasí, je příchozí dotaz podrobenRRL a případně zahozen
https://tools.ietf.org/html/draft-ietf-dnsop-cookies-09
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 8 / 16
Omezení velikosti UDP odpovědi
rozšíření EDNS0 zvětšuje délku UDP zpráv nad 512 Bobvykle na 4096 Bomezením velikosti k ~1 kB snížíme účinnostzesilujícího útokutaké se tím zlepší situace resolverům s nefunkčnímPath MTU Discoverypříliš nízká hodnota může naopak rozbít resolverybez TCP konektivity
obzvláště při použití DNSSECtakto postižených uživatelů je ~2 % (měření Geoffa Hustona)
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 9 / 16
Když jste pod útokemincident 18. 12. 2013 11:00 – 12:00 CETzahlcení hlavního DNS resolveru UDP paketyna náhodná čísla portů, obsahující 128 × 0x00provoz přicházel ze všech zahraničních linekz náhodných adrespro obět bez možnosti obrany
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 10 / 16
Útok náhodnými dotazypostihuje zároveň rekurzivní i autoritativní serveryútočící botnet pokládá dotazy ve stylu<random string>.www.example.comdotaz je vždy přeposlán autoritativnímu serveruautoritativní server se pod náporem hroutírekurzivní server čeká na odpověď a zkouší dotazyopakovat
iree0foh.www.example.com?iree0foh.www.example.com?
NXDOMAINasdf.www.example.com?
asdf.www.example.com?
NXDOMAINútočník
rekurzivní resolver autoritativní servery
https://www.root.cz/clanky/utok-na-dns-nahodnymi-dotazy/
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 11 / 16
Přetížení rekurzivních serverůfetches-per-server v BINDratelimit v Unbound
útočník
rekurzivní resolver autoritativní servery
iree0foh.www.example.com?
iree0foh.www.example.com?iree0foh.www.example.com?
asdf.www.example.com? asdf.www.example.com?
NXDOMAIN
asdf.www.example.com?
asdf.www.example.com?
asdf.www.example.com?
iree0foh.www.example.com?
nezabezpečenédomácí routery
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 12 / 16
Přetížení autoritativních serverů
Otázka: Proč používáme Anycast DNS?Odpověď: Pro odolnost vůči útokům, snížení latence je
sekundární efekt.
Otázka: Co tvoří většinu provozu?Odpověď: Odpad.
Otázka: Kam bychom měli instalovat nové instance?Odpověď: Tam, kde chtějí správné odpovědi. ŠPATNĚOdpověď: Tam, odkud se hrne odpad.Zdroj: Randy Bush @ DNS-WG
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 13 / 16
Budujeme globální Anycast
Potřebné ingredience:1× veřejné číslo AS1× /24 IPv4 adresy1× /48 IPv6 adresy (preferovaně tzv. PI adresy)n× geograficky rozmístěné DNS servery
v housingu s plnou IPv4 a IPv6 konektivitouv housingu ochotném navázat se serverem BGPsession (zkusíme oslovit NRENy)ohlašující daný AS s danými IPv4 a IPv6 adresamicentrální provisioning a orchestrace
Inspirace: https://noc.esgob.com/
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 14 / 16
Útok nekonečnou delegacíupravený autoritativní serverposílá nové a nové reference
1.example.com. delegováno na 2.example.com.2.example.com. delegováno na 3.example.com.
omezení trvání/hloubky rekurze implementovánov serverech od prosince 2014v praxi jsme nezaznamemali
https://www.root.cz/clanky/utok-na-dns-nekonecnou-rekurzi/
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 15 / 16
Závěr
Děkuji za pozornost
Ondřej [email protected]://Ondřej.Caletka.cz
Ondřej Caletka (CESNET, z. s. p. o.) Útoky na DNS 9. února 2016 16 / 16