Leggo che il tema del DNS poisoning è ancora attuale, circa tre anni dopo la sua esplosione.
Prima di tutto, un’introduzione per chi non conosce il funzionamento del DNS.
Ogni macchina su Internet è identificata da un indirizzo numerico (per ora, principalmente nella forma a.b.c.d dove le lettere rappresentano dei numeri da 0 a 255 decimale), ma è un dato difficile da ricordare e su uno stesso IP possono vivere più server virtuali, nel caso di httpd. È stato quindi creato un sistema che associa delle sequenze più facili da ricordare ad un indirizzo numerico: è più facile ricordare siamogeek.com piuttosto che 84.19.182.37. Il sistema per passare dal nome usato dagli umani all’indirizzo numerico utilizzato dalle macchine è detto risoluzione del nome, il quale si basa sul sistema dei nomi a dominio (DNS). Quando voglio risolvere siamogeek.com, il mio computer genera un numero di sicurezza a caso tra 0 e 65.535 e lo scrive in una richiesta che invia al server DNS di riferimento (quello definito nelle impostazioni del TCP/IP del computer). Il server DNS, elabora la richiesta e risponde allegando quel numero nella risposta per fare in modo che io abbia la (relativa) sicurezza che mi ha risposto il server legittimo e non un malintenzionato. Prima del 1995 i numeri erano scelti in sequenza e, quindi, facilmente indovinabili; ora tutti i computer li scelgono a caso, ma la bontà della casualità della scelta dipende dalla piattaforma che la esegue e, quindi, potrebbe essere facilmente indovinabile. (altro…)