250 likes | 326 Views
DDoS támadások veszélyei és az ellenük való védekezés lehetséges módszerei. Gyányi Sándor. DoS támadás meghatározása.
E N D
DDoS támadások veszélyei és az ellenük való védekezés lehetséges módszerei Gyányi Sándor
DoS támadás meghatározása • Denial of Service: szolgáltatás megtagadás. A támadó a célpont informatikai rendszerét próbálja olyan módon túlterhelni, hogy az képtelen legyen a normál, üzemszerű működésre és így az általa nyújtott szolgáltatás nyújtására.Leggyakoribb módszer: túlterhelés.
„Klasszikus” DoS • A célpontot egyetlen pontból támadják. • A támadó a célpont erőforrásait próbálja lefoglalni. • Lehetséges hálózati rétegben (pl. TCP Syn Flood Attack) vagy alkalmazási rétegben (e-mail flooding vagy anonymous ftp tárolóhely lefoglalás)
TCP Syn Flood Attack • Az IP hálózatok - így az Internet is - legnépszerűbb szolgáltatásai (SMTP, HTTP, FTP) TCP kapcsolatot alkalmaznak. • TCP kapcsolat felépítését egy úgynevezett „háromutas” kézfogás előzi meg. • A kliens Syn csomagot küld. • A szerver Syn + ACK csomaggal nyugtáz. • A kliens Syn + ACK csomaggal nyugtáz. A kapcsolat ettől a ponttól működőképes.
TCP Syn Flood Attack 2. • A támadás menete: • A támadó Syn csomagot küld, hamisított feladó címmel. • A célpont tárolja a leendő kapcsolat adatait, majd Syn + ACK nyugtázó csomagot küld a feladónak (a hamisított, esetleg nem is létező címre). • A célpont nem kap választ, ezért néhányszor (általában még háromszor) újraküldi az üzenetet. • A célpont felszabadítja a kapcsolat tárolására szolgáló memóriát. A támadó nagy mennyiségű Syn csomaggal árasztja el a célpontot, amelynek a kapcsolatok állapotát tároló memóriája megtelik, így nem lesz képes új TCP kapcsolatot létrehozni.
TCP Syn Flood Attack 3. • Védekezés módszerei: • A „félkész” kapcsolatok tárolására szolgáló memória megnövelése. • Speciális eljárások (Syn Cookie).
E-mail flooding • A támadó a célpont SMTP szerver számára nagy mennyiségű elektronikus levelet küld. • A célpont tárolókapacitása véges, így kellő mennyiségű levéltől megtelik, ami további levelek fogadását lehetetlenné teszi. • Ha a célponton a beérkezett leveleket szűrésnek vetik alá, akkor a szűrés gyengeségeinek kihasználása, és így a rendszer erőforrásainak lefoglalása (pl. 2GB-nál nagyobb ZIP állomány csatolása).
E-mail flooding 2. • Védekezés: a támadás detektálása, a támadó címének meghatározása majd hálózati rétegben kitiltása.
HTTP kiszolgáló leterhelése • Egy HTTP kiszolgáló általában maximalizálja az egy időben működő processzeinek számát. A támadó sok egyidejű kapcsolatot hoz létre, amelyeken lassú adatátvitelt végez, így igénybe veszi az összes rendelkezésre álló processzt. • A támadó speciális kérések kiadásával elfogyasztja a kiszolgáló belső erőforrásait.
DDoS • Distributed Denial of Service: elosztott szolgáltatás megtagadásos támadási módszerek. • A támadó egyidejűleg nagyszámú végpontot használva indítja meg a támadást. • Lehetséges a hálózati rétegben (ICMP vagy UDP flooding) vagy az alkalmazási rétegben.
ICMP flooding, „Smurf” attack • AZ ICMP az IP segédprotokollja. • A hálózati hibakereséshez használt „ping” parancs ICMP Echo Request és Echo Reply üzeneteket használ. • Minden IP hálózatnak létezik egy „broadcast” címe, amelyre üzenetet küldve a hálózat összes végpontja válaszol. Hibás konfigurálás esetén ez a broadcast cím nem csak hálózaton belül érhető el.
ICMP flooding, „Smurf” attack 2. • A támadó keres ilyen hibásan konfigurált, nagy sávszélességű, sok végpontot tartalmazó hálózatokat. • A célpont címét hamisítva feladóként, a hálózat broadcast címére elkezd Echo request üzeneteket küldeni. • A hálózat összes végpontja válaszol, Echo reply üzeneteket küldve a célpont címére.
ICMP flooding, „Smurf” attack 3. • Védekezés: • A hálózati útválasztók helyes konfigurálása. • Támadás észlelése esetén a támadást akaratlanul végrehajtó (vagy ideiglenesen az összes) hálózatból érkező Echo reply üzenet szűrése.
DDOS az alkalmazási rétegben • A támadó nagyszámú végpontot használva normál, a rendes működés során általánosan használt kéréseket küld a célpontnak. • A kiszolgálókat nem az extrém esetekre méretezik, így az erőforrások kimerülnek. • A szolgáltatások általában aszimmetrikus működésűek (a kérést elküldeni egyszerűbb, mint a választ előállítani), így könnyű lefoglalni az erőforrásokat (hálózati sávszélesség, számítási kapacitás).
HTTP támadás • Helyesen megválasztott kérésekkel a kiszolgálót nagy mennyiségű művelet végrehajtására lehet késztetni, így a kiszolgálás sebessége használhatatlan értékre csökken. • A legnépszerűbb webszolgáltatások dinamikusan állítják elő az oldalakat, tipikusan adatbázisból dolgozva.
HTTP támadás 2. Egy rövid példa: <html> <head> <title>DOS</title> <script type="text/javascript"> function Tolt() { sSearch = ""; for (i=0; i<7; i++) sSearch += String.fromCharCode(65+Math.floor(Math.random()*27)); document.getElementById("dframe").src="http://www.google.hu/search?hl=hu&q="+sSearch+"&btnG=Google+keres%C3%A9s&meta="; var tt = setTimeout("Tolt()",1000); } </script> </head> <body onload="Tolt()"> <iframe id="dframe" src="about:blank" width="600" height="600"></iframe> </body>
HTTP támadás 3. • Védekezés: • Csaknem lehetetlen, a támadás módszerének ismeretében egyedileg meghatározott módszerrel. • Drága megoldást jelent az elosztott architektúra (cache szerverek), így a támadás jobban eloszlik.
Reflektív DDoS támadások • Viszonylag fiatal DDoS támadási módszer. • A támadás során más, „ártatlan” végpontokat használnak fegyverként. • Az „ártatlan” végpontokat nem szükséges uralni a támadás indításához. • Hálózati és alkalmazási rétegben egyaránt elvégezhető.
Reflektív DDoS támadások 2. • Hálózati rétegben kivitelezett reflektív támadás: TCP Syn+ACK Attack. • A támadó a harmadik félnek („ártatlan végpont”) TCP Syn csomagot küld, a célpont címét hamisítva a feladó címeként. • Az „ártatlan végpont” erre TCP Syn + ACK csomaggal válaszol, elkezdve a TCP kapcsolat létrehozását. • A TCP Syn + ACK csomag a célpontot találja el. • Mivel az „ártatlan végpont” nem kap választ, ezért újraküldi (általában még háromszor) a csomagot. • A támadó egyetlen csomagjának hatására a célpont négy csomagot kap. Egy valós támadás: http://www.grc.com/dos/drdos.htm
Reflektív DDoS támadások 3. • Védekezés: • Hamisított IP csomagok szűrése (ISP szintű beavatkozás). • TCP portcím alapján a keletkező forgalom egy része kiszűrhető (ISP szintű beavatkozás).
Reflektív DDoS támadások 4. • Alkalmazás rétegben: egyes SMTP kiszolgálók a nem létező címre érkező elektronikus leveleket elfogadják, majd amikor kiderül, hogy a kézbesítés lehetetlen, a feladó számára értesítést küldenek. • Ha a támadó a célpont email címét adja meg az SMTP párbeszéd során, akkor az értesítést az áldozat kapja meg. • A levelek küldését botnetek nagy tömegben képesek elvégezni, a reflektív működés miatt a hlózati szintű szűrés nehezen kivitelezhető.
Reflektív DDoS támadások 5. HELO sanyi 250 mail.webgame.hu Hello 3e44bd93.adsl.enternet.hu [62.68.189.147], pleased to meet you MAIL FROM: bill.gates@microsoft.com 250 2.1.0 bill.gates@microsoft.com... Sender ok RCPT TO: george.w.bush@whitehouse.gov 550 5.7.1 george.w.bush@whitehouse.gov... Relaying denied RCPT TO: bill.clinton@kewl.hu 550 5.1.1 bill.clinton@kewl.hu... User unknown
Reflektív DDoS támadások 6. • Védekezés: Levelező szerverek helyes konfigurálása.
Összefoglaló • A DDoS támadások végrehajtása a botnetek segítségével egyre egyszerűbb, így a támadások száma várhatóan növekedni fog. • A támadások elindulása után a védekezés már nehéz, utólag az események rekonstruálása (és így a felelősök megbüntetése) ritkán megoldható. • Az ilyen támadások visszaszorítása érdekében megelőző tevékenységeket kell végezni (botnet vezérlő végpontok felderítése, lekapcsolása).
Források • RFC 793: Transmission Control Protocol • http://www.techzoom.net/paper-mailbomb.asp • http://www.cert.org/advisories/CA-1998-01.html • http://www.newscientist.com/article.ns?id=dn4858 • http://www.cert.org/tech_tips/denial_of_service.html