Locked History Actions

Ping of death

Ping of death

Mirtina ataka


Apibrėžimas

Ping of death yra vienas iš atsisakymo aptarnauti atakos būdų. Ping of death buvo aktualus kompiuterio atakos metodas iki 1997 m., nes šis būdas išnaudojo daugelio tuometinių kompiuterių sistemų (tokių kaip Unix, Linux, Mac, Windows) spragą – jos negalėdavo apdoroti didesnio nei 65535 baitų dydžio ICMP-Echo-Request sufragmentuoto paketo. Nors IPv4 maksimalus paketo dydis yra 65535 baitai. Taigi paketo siuntimas, kurio dydis yra 65536 baitai, teoriškai neatitiktų interneto protokolo (RFC-791). Tačiau tokio dydžio paketas gali būti išsiųstas prieš tai jį sufragmentavus. Tokiu būdu pasiekiama, kad duomenis gavęs kompiuteris bando paketa defragmentuoti, jo buferis persipildo, ko pasekmė dažniausiai būną sistemos užstrigimas arba persikrovimas. Tačiau ši problema bendru mastu buvo išspręsta 1997-1998 m., todėl šis atsisakymo aptarnauti atakos metodas nėra aktualus.

Paaiškinimai

Pagal RFC-791, IPv4 paketas gali būti iki 65,535 (2^16-1) baitų dydžio. Į šį skaičių įeina ir antraštės ilgis jeigu nėra nustatyta kitaip, paprastai tai yra 20 baitų. Paketai kurie yra didesni už maksimalų perdavimo vienetą yra sufragmentuojami į mažesnius paketus, kurie nukeliavę į galutinį tašką yra vėl surenkami. ICMP ECHO užklausa yra IP pakete ir jį sudaro 8 baitus ICHMP antraštės informacijos (RFC-792). Po jos eina duomenų baitai “ping” užklausai. Turint tai omenyje, apskaičiuojamas maksimalus leistinas duomenų lauko dydis: 65535 – 20 – 8 =65507 baitai. Išsiųsti echo paketą su daugiau nei 65507 duomenų baitų yra įmanoma, dėl paties paketų fragmentavimo principo. Fragmentavimas remiasi poslinkio reikšmės nustatymu kiekviename fragmente, kad būtų įmanoma nuspręsti kur kuris fragmentas eina, juos visus vėl sujungiant. Visgi paskutiniame fragmente įmanoma apjungti teisingą poslinkį su tinkamu fragmento dydžiu, kuris galiausiai būtų didesnis nei 65535. Kadangi paprastai kompiuteriai defragmentuoja paketus tik kai turi visas jo dalis, yra galimybė, kad buferis persipildys, kas galiausiai priveda prie sistemas veiklos sutrikdymo. Atakos realizavimas paprastas – komandinėje eilutėje įrašome: “ping –l 65510 ip.adresas”.

1996 m. Ping of death atakai pažeidžiamos operacinės sistemos

Operacinė sistema

Versija

Pasekmės

Solaris (x86)

2.4

Persikrauna

Minix

1.7.4

Užstringa

HP3000 MPE/iX

4.0, 5.0, 5.5

Sisteminė klaida

Convex SPP-UX

Visos

Užstringa

Apple Mac

MacOs 7.x.x

Užstringa

Novell Netware

3.x

Įvairios pasekmės

Windows ‘95

Visos

Užstringa

Nuo šio tipo atakos, jai aktualiu laikmečiu, buvo apsisaugojama arba ugniasienėje užblokuojant įeinančius IP, arba atsinaujinant operacinę sistemą. Tačiau pirmasis apsisaugojimo būdas buvo mažai efektyvus.

Naudota literatūra

http://en.wikipedia.org/wiki/Ping_of_death
http://isauga.wikispaces.com/KT
http://insecure.org/sploits/ping-o-death.html