Alnitawk   Virus /
BadFragment
SearchWiki
Virus.RecentChanges
Edit Page
Page Revisions

Riassunto breve: no se preocupe.

Un pacchetto IP può avere al massimo la dimensione consentita dal valore di MTU (Maximum Transmission Unit) nella rete dove nasce. Se, da questa rete, viene instradato su un'altra rete con MTU minore, il pacchetto viene frammentato e inviato in due o più pacchetti fino a destinazione, dove lo stack (TCP/)IP ricevente lo riassembla.

Per il riassemblaggio si seguono le apposite "istruzioni" che il router mittente ha inserito nei vari frammenti.

Manco a dirlo, vari sistemi operativi (superfluo fare nomi) avevano dei bug nella fase di riassemblaggio: situazioni come due frammenti che si sovrappongono, due frammenti che non si sovrappongono, frammenti di dimensioni diverse dal reale... in tutte queste situazioni il programmatore non aveva indicato allo stack TCP/IP cosa fare.

E quando i computer non sanno cosa fare, i risultati non sono mai granché. Blue Screen of Death, "inchiodamento" della macchina, "accecamento" dello strato di rete, erano alcune delle conseguenze dell'aver dimenticato quei rari casi particolari (che sono rari finché qualcuno non li genera apposta).

Oggigiorno, a meno che non sia stato scoperto un nuovo bug in quel settore, o un modo di rintronare un router in modo che frammenti a casaccio, un "attacco" di questo tipo è quasi sempre uno di quegli onesti, e rari, casi in cui uno dei router fa onore al proprio nome, e rutta nel cavo mentre passa un pacchetto.

In alternativa siete i felici possessori di un firewall con mascheramento di OS, per cui se qualcuno effettua dei 'probe' per capire che OS usate, crede di vedere che usiate il sistema operativo XYZ; sapendo che quel sistema era vulnerabile ad un attacco a frammentazione, qualcuno che vi vuole male vi spara addosso un po' di frammenti malformati.

Ma siccome voi non state davvero usando l'OS XYZ, quei frammenti non vi fanno né caldo né freddo, tranne che per il fatto che vi pigliate paura alla notifica del firewall.


Edit Page - Page Revisions - WikiHelp - SearchWiki - RecentChanges
Page last modified on May 16, 2004, at 10:26 PM