DNS / kiberbiztonság

Tizennyolc éve egy ideiglenes megoldás védi az internetet. A hibát máig nem javították ki.

A 2008-as javítás megmentette a DNS-t, de nem oldotta meg a problémát. Tizennyolc évvel később a sérülékenység még mindig a protokoll része, miközben a valódi megoldás továbbra sem terjedt el.

· 3 perc
Tizennyolc éve egy ideiglenes megoldás védi az internetet. A hibát máig nem javították ki.

2008. július 8.

Egyazon napon adott ki javítást a névszervereihez a Microsoft, a Cisco, a Sun és a BIND fejlesztője. Ugyanaz a sérülékenység bukkant fel minden termékben.

A biztonsági közlemény részletesen ismertette a frissítést. Magára a támadásra mindössze egyetlen mondat jutott.

A sebezhetőség felfedezője harminc nap hírzárlatot kért, mielőtt a nyilvánosság elé tárta volna a részleteket.


Dan Kaminskynek hívták. Amit felfedezett, az valójában magának a protokollnak a hibája volt.

A DNS minden beérkező választ egy 16 bites tranzakciós azonosító alapján rendel az eredeti lekérdezéshez, ami összesen 65 536 lehetőséget jelent. Dan Bernstein, a djbdns fejlesztője már 1999-ben figyelmeztetett, hogy ez az érték kitalálható; a legelterjedtebb implementációk azonban arra építettek, hogy a gyorsítótár (cache) napi néhány próbálkozásra korlátozza a támadókat.

Kaminsky trükkje a következő volt: kérdezzünk le a névfeloldótól (resolvertől) garantáltan nem létező neveket, például 1.example.com vagy 2.example.com. Mivel ezek új bejegyzések a gyorsítótár számára, minden lekérdezés új lehetőséget ad arra, hogy a hamisított válasz a valódi előtt érkezzen meg. Ha ez akár csak egyszer sikerül, a támadó az egész tartományra (domainre) vonatkozóan új rekordokat csempészhet a rendszerbe.

Folytasd a próbálkozást a győzelemig, és a névfeloldó a tiéd. A felhasználók webes forgalma, e-mailjei, jelszó-visszaállításai – minden oda fut be, ahová te irányítod.

Kaminsky felhívta Paul Vixie-t, a BIND mögött álló DNS-veteránt. Vixie hamar összegezte a helyzetet: „A digitális univerzumban az égvilágon mindent javítani kell.”

És pontosan ez is történt. Fű alatt, a gyártók bevonásával – majd egyszerre, július 8-án. Kaminsky szerint ez volt az iparág történetének első esete, amikor a technológiai cégek teljesen összehangoltan adtak ki egy biztonsági frissítést.


A frissítés azonban nem szüntette meg a sebezhetőséget.

Erre esély sem volt, mivel a 16 bites mező a protokoll része; a lecserélése magának a DNS-nek a lecserélését jelentené. A frissítés ezért egy második kitalálandó értéket vezetett be: minden lekérdezés forrásportját véletlenszerűvé tették, ami nagyjából további 16 bitnyi bizonytalanságot adott az eredeti konstrukcióhoz. A CERT közleménye ezt nyíltan kimondta: a protokoll módosítása nélkül ezek az intézkedések nem képesek teljesen megakadályozni a gyorsítótár-mérgezést (cache poisoning).

Egy olyan támadáshoz, amely korábban tízezres nagyságrendű csomagot igényelt, immár milliárdokra van szükség. A sebezhetőség továbbra is létezik, egyszerűen csak sokkal költségesebb lett a kihasználása.

A biztonsági frissítés valójában csak jelentősen megnövelte a támadás költségét.

Az eredeti tervek szerint a világnak harminc napja maradt volna a telepítésre, mielőtt Kaminsky a Black Hat konferencián bemutatja a technikát. Végül mindössze tizenhármat kapott: július 21-én egy biztonsági cég blogbejegyzése részletesen kiteregette a támadás módszertanát. A bejegyzést hiába törölték gyorsan, a weben elterjedt másolatokat már nem lehetett eltüntetni.


A protokollszintű megoldás már létezik: ez a DNSSEC. Ha a válaszokat kriptográfiai aláírással látják el, a hamisított csomagok azonnal elbuknak, függetlenül a támadó próbálkozásainak számától.

Geoff Huston, az APNIC vezető kutatója 2023-ban megvizsgálta a technológia elterjedtségét. A .com domainek mindössze 4,3 százalékát írták alá. A google.com, az amazon.com és a microsoft.com kimaradt ebből a körből. A hálózati forgalommal súlyozott számítás alapján a világ DNS-lekérdezéseinek nagyjából egy százaléka végződött kriptográfiailag ellenőrzött válasszal.

Tizennyolc évvel a nagy, összehangolt frissítés után még mindig az akkori mesterséges „áremelés” adja a védelem oroszlánrészét.

Ha a céged domainje aláíratlan – márpedig 2023-ban a .com domainek több mint 95 százaléka ilyen volt –, akkor az ügyfeleid és a hamisított DNS-válaszok közötti utolsó akadály egy találgatási játék maradt, amelynek esélyeit utoljára 2008-ban növelték meg. Az aláírás beállítása a legtöbb DNS-szolgáltatónál technikailag mindössze egy jelölőnégyzet kipipálását igényli; a nehezebb része inkább az, hogy a szervezeten belül végig kell vinni a szokásos változáskezelési folyamatot. Csakhogy a legtöbb szervezetnél ez nem szerepel senki munkaköri leírásában.


Az ICANN 2010-ben hét embert választott ki a DNS gyökérzónáját (root) aláíró mesterkulcs egy-egy darabjának őrzésére. Kaminsky a hét kiválasztott egyike volt. 2021-ben hunyt el.

Az internet annak az embernek adta a válaszok hitelességét igazoló kulcs egy darabját, aki korábban bebizonyította, hogy ezek a válaszok hazudhatnak. Maga a rendszer viszont azóta is a szükségmegoldáson ketyeg.