Egy régen ismert, és nagyon egyszerű módszerrel vicceltek meg néhány weboldalt, köztük olyan cégekét is, amelyek az informatikában jó nevű biztonsági cégeknek számítanak.
Mivel sok értelme az akciónak nem volt, számomra két dolog merült fel, mint lehetséges forgatókönyv.
Egy nagyobb akció előtti főpróba, vagy pusztán erőfitogtatás.
DNS poisoning - ez a megnevezése annak a módszernek, amelynek segítségével eltérítettek tegnap néhány weboldalt, amivel igazából semmilyen eredményt nem értek el a támadók. Ezért tartom valószínűbbnek, hogy nem erőfitogtatás áll a háttérben.
Ez egy olyan támadás, amit a weboldal tulajdonosa nem tud kivédeni, ugyanis a mérgező támadás félúton, a weboldal és az azt megtekintő felhasználó között van.
Ahhoz, hogy ezt megértsük, ismernünk kell a DNS szerverek működését. A proxyról szóló blogbejegyzésemben írtam, hogy a számítógépek IP címeken keresztül kommunikálnak egymással. Mi azonban a böngészőnk címsorába neveket írunk (most pl. www.onlinedemo.hu látható ott). A DNS szerverek feladata, hogy az általunk begépelt, könnyen megjegyezhető címekből IP címre fordítson oda-vissza.
Egy domainhez általában egy domain zóna tartozik, amit általában a domain tulajdonosa tart karban, ő dönti el, hogy melyik DNS névhez melyik IP cím tartozzon. A zónát nyilvántartó szervereket emiatt a domain tulajdonosa ugyanúgy védi, mint a weboldalait szolgáltató gépeket, hiszen, ha valaki a DNS zónát illegálisan meg tudná változtatni, avval a felhasználókat eltéríthetné az eredeti kiszolgálóról.
A DNS-ek roppant magas terhelésűek, hiszen a nagy forgalmú zónákat másodpercenként milliós számban is kérdezgethetik a felhasználók, éppen ezért nem minden kérés jut el az eredeti, azaz hiteles zónaforráshoz. Útközben ugyanis vannak úgynevezett DNS közvetítők, akik ideiglenesen tárolják az adott címet, azaz, ha X felhasználó már megkérdezte egyszer az adott címet, a választ megjegyezve a következő Y felhasználó kérésére ugyanazt fogja válaszolni. Természetesen ez nem tart örökké, a zóna tulajdonosa meghatározza az ilyen hozzárendelések életciklusát (TTL), és amíg az az idő az első kéréstől le nem telik, addig a közvetítő nem fog mást válaszolni a kérésre.
Nos, a támadók egy ilyen közvetítő szerverre törtek be, és az ideiglenesen tárolt rekordokat mérgezték meg úgy, hogy az eredeti céltól eltérítették a felhasználót.
Ez a módszer például egy banki webfelület esetén elég problémás tud lenni, képzeljük csak el, hogy beírjuk a már megszokott címet a böngészőnkbe, bejön a már megszokott felület, amit a támadó ügyesen le tud másolni, majd beírjuk a felhasználónevet/jelszót, és kapunk egy hibaüzenetet, hogy rossz a jelszó. A második kísérletre pedig már a támadó az eredeti bankfelületet adja vissza, amin be is tudunk lépni, a gyanúnk eloszlik, és avval nyugtatjuk magunkat, hogy biztosan elgépeltünk valamit.
Pedig nem. Az első kísérletnél a támadó eltárolta a felhasználónevet és a hozzá tartozó jelszót, majd átirányított egy másik felhasználó/jelszó párossal az eredeti oldalra, ahol is a hibaüzenet már valós volt, és a további munka is valós. Pár nap múlva meg könnyen eltűnhet az összes pénz a számlánkról, mert a támadó felhasználja az így megszerzett információkat.
És, mint jeleztem, az ilyen támadás nem az üzemeltető, hanem a közbülső szerverek hibája, amely valamelyik internetszolgáltató infrastruktúrájának része.
Fontos tanácsok
A fentiek végett nagyon fontos, hogy
- soha ne írjunk be személyes adatokat olyan weboldalon, amelyen a böngészőnk tanúsítványhibát jelez.
- ha egy megszokott felhasználónév/jelszó párossal nem tudunk azonnal belépni egy oldalra, az első sikeres belépés után azonnal változtassuk azt meg.