Il DNS è il Domain Name System. È un protocollo di TCP-based e del UDP che ascolta su orificio 53. I collegamenti di TCP sono usati comunemente per i trasferimenti di zona.
Il DNS abbina gli indirizzi del IP ai hostnames (ed i hostnames agli indirizzi del IP). Un assistente di DNS è responsabile, o autorevole, per una data parte del Domain Name System (per esempio, mybitofthenet.com).
I clienti fanno le richieste degli assistenti di DNS quando desiderano comunicare con i sistemi per cui hanno soltanto il hostname completamente qualificato (per esempio, myserver.mybitofthenet.com).
Il DNS è una parte critica dell'infrastruttura della rete. Il relativo guasto—se con l'incompetenza o la smentita di servizio amministrativa—può avere conseguenze importanti.
|
|
Il protocollo di DNS ha problemi di sicurezza. Una descrizione dettagliata di DNS e le relative debolezze di protocollo possono essere trovate a http://www.geocities.com/compsec101/papers/dnssec/dnssec.html. Il DNS è definito in un certo numero di RFCs—vede http://www.dns.net/dnsrd/rfc/ per i dettagli completi.
Per quanto la sicurezza ospite di UNIX va, il software il più ampiamente usato dell'assistente di DNS è LEGATURA (daemon di nome di Internet del Berkeley), sviluppata dal consorzio del software del Internet (ISC). Per difetto, il daemon di LEGATURA "ha chiamato" i funzionamenti con i privilegi della radice e—questo è importante—esso permanente non li getterà via dopo essere legatsi per port 53. Di conseguenza, le vulnerabilità nella LEGATURA possono provocare un compromesso completo del sistema.
Guardiamo l'annotazione di pista di LEGATURA.
Il rilascio 8.2.3 è stato liberato nel mese di gennaio del 2001 per riparare le quattro vulnerabilità di sicurezza scoperte dai laboratori della COVERT (sicurezza del PGP) e da Claudio Musmarra. Due trabocchi dell'amplificatore permettono che i attackers a distanza facciano funzionare tutto il codice della loro scelta. Un errore di convalida dell'input permette ai attackers di fare funzionare tutto il codice e una perdita delle informazioni permette che i dati nella pila siano osservati da un attacker. Questo ultimo non ha potuto sembrare così difettoso. Dopo tutto, non è un compromesso diretto della radice cheattende, ma realmente aiuta lo sviluppo delle imprese contro un luogo particolare. La pila tiene le variabili locali, le variabili di ambiente e gli indirizzi trattati importanti. Accedendo a questi, un trabocco dell'amplificatore può essere scritto senza prova ed errore. Ciò è significativa perché i trabocchi dell'amplificatore sono spesso un attacco unico—se gli ottenete persino un po'errato, voi sono probabili arrestare un servizio scribbling dappertutto i dati della pila successivamente hanno contato su dal programma.
La LEGATURA ha avuta 12 advisories di sicurezza dal CERT durante appena quattro anni—appena un'approvazione di sicurezza di LEGATURA!
Un fattore importante è la complessità del codice di LEGATURA. I programmatori con esperienza di C commentano che il codice di LEGATURA è incredibilmente difficile da capire. Quando i programmatori compiuti lottano per comprendere che cosa sta accendendo, potete essere sicuri dei problemi di sicurezza. Il codice complesso è duro da verificare—il più bene la progettazione modulari, in cui i piccoli, programmi discreti (che sono più facili da verificare) realizzano i funzionamenti privilegiati. Naturalmente, gli sviluppatori di ISC non hanno precisato per scrivere qualcosa che persino troverebbero duro per effettuare—la difficoltà sono un risultato della caratteristica bloat. Forse che è uno dell'ISC del motivo recentemente ha riscritto le parti importanti di LEGATURA.
Nel mese di gennaio del 2001, l'ISC ha annunciato il rilascio di nuova versione importante della versione—9.1.0 di LEGATURA. Questa versione include il sostegno DNSSEC—un'estensione di protocollo che sormonta alcuna della debolezza di disegno di sicurezza nel protocollo di DNS delle azione (DNSSEC è definito in RFC 2535.) Considerevolmente, il codice non era modularized, così ora noi ha nuovo codice che è ancora duro da verificare. Molti luoghi sono probabili continuare a fare funzionare la LEGATURA 8, almeno a breve termine.
Risulta i attackers come rompersi negli assistenti di LEGATURA, così tanto in modo che i tassi di SANS unpatched gli assistenti di LEGATURA come il problema di sicurezza di numero uno sul Internet. Le imprese per LEGATURA abbondano. Gli assistenti di DNS sono obiettivi saporiti perché così tanto del Internet su allora conta. Con controllo di un assistente di LEGATURA, potete fare le cose vero nasty, per esempio:
· Privi un luogo di traffico cambiando i rilievi di IP/name ad un indirizzo inesistente. Alambicco più difettoso, potete riorientare il traffico ad un luogo del competitore o pornographic. Il reddito perso e la pressa difettosa non aiutano il prezzo di riserva dell'azienda.
· Cloni un luogo di e-commercio, modifichi l'assistente di DNS del luogo per tracciare il vostro luogo del imposter e raccolga i particolari della carta di credito, il cliente dell'utente ed i particolari di parola d'accesso.
· Sfrutti i rapporti di fiducia fra i sistemi tracciando un IP da un lato del rapporto di fiducia alla vostra macchina.
· Comprometta uno dei nameservers della radice.
Quell'ultimo sta preoccupandosi specialmente. I nameservers della radice sono il punto di partenza per il richiamo sul Internet. Ci sono soltanto 13 nameservers della radice nel totale (a causa delle limitazioni di protocollo). Assuma la direzione dei nameservers della radice e potete avere il Internet in vostra mano. Come divagazione, la scelta della piattaforma ed i sistemi operativi per queste macchine segue il principio di sicurezza con la diversità. Per citare da una dichiarazione di Y2K sul luogo di ICANN's (il Internet Corporation per i nomi ed i numeri assegnati):
Gli assistenti essi stessi tutti della radice usano una certa variante del sistema operativo di UNIX, comunque sia la base dei fissaggi che le varianti del vendors'UNIX sono relativamente varie: dei 13 assistenti della radice, ci sono 7 piattaforme di fissaggi differenti che si allontanano 8 versioni differenti del sistema operativo da 5 fornitori differenti.
Ciò è un'idea sana—usata in natura tramite Mother la Nature lei stessa. Naturalmente, analizza se non avete coordinatori sufficiente vari a disposizione per controllare saldamente otto sistemi operativi differenti.
Oltre ai difetti di sicurezza, il misconfiguration è comune. Nel graduare sul vostro luogo, i attackers chiederanno i trasferimenti di zona dal vostro assistente di DNS. Ciò è basicamente un deposito di tutte le informazioni che appartengono una zona particolare di DNS. Ciò è buona come programma della rete! Non desiderate questo.
Un'altra configurazione è numeri di versione (ancora). Per scoprire la versione di LEGATURA che state funzionando, un cliente può interrogare il vostro assistente di DNS ed il vostro assistente dirà loro. Ciò non è così buona.
L'altro rischio principale che affrontano il protocollo di DNS e l'esecuzione di LEGATURA sono smentita degli attacchi vice del ser. Le vulnerabilità numerose del DOS sono state trovate nella LEGATURA. Che inabilita il DNS gli assistenti impedisce le domande di DNS la risoluzione, quindi arrestando i clienti che contano sui servizi di risoluzione di DNS (cioè quasi tutto) nelle loro piste.
Le contromisure evidenti deve trovare un'alternativa a LEGATURA funzionante. Qui le vostre scelte sono limitate—noi vivono in una monocoltura di LEGATURA. Potreste commutare all'esecuzione di DNS del Microsoft (che non è una raccomandazione), o cerchi un assistente di DNS in cui la sicurezza dell'esecuzione era un obiettivo primario.
L'unica alternativa che possibile sono informato di è il pacchetto dei djbdns da Daniel Bernstein. Ciò ha avuta uso sufficiente di produzione da essere un concorrente serio DA LEGARSI. È stata progettata e scritto stata con sicurezza in mente da un programmatore con esperienza nel codice sicuro di scrittura. Potete scoprire più qui: http://cr.yp.to/djbdns.html.
Se attaccate con LEGATURA, ci sono alcune cose che potete fare. Un sommario utile delle edizioni e delle contromisure è disponibile da http://www.acmebw.com/papers/securing.pdf. _ voi dov almeno prendere serio in considerazione to quanto segue
· Non faccia funzionare la LEGATURA come radice. Invece, generi un nuovo utente e raggruppi. Specifichi questi come ordine-linea opzioni quando eseguite la LEGATURA.
· Usi l'ordine del chroot fare funzionare la LEGATURA in modo che abbia limitato l'accesso al filesystem. Il programma del chroot vi permette di specificare l'indice che un processo trattare come il relativo indice di radice (fatto rispettare dal nocciolo). Per fare questo comunque, dovete generare un mini duplicato del vostro sistema operativo perché la LEGATURA più non potrà vedere le biblioteche di sistema e le lime importanti di configurazione. Le istruzioni complete possono essere trovate qui: http://www.etherboy.com/dns/chrootdns.html.
· Il numero di versione è hard-coded nel codice di LEGATURA, in modo da se avete codice sorgente, potete rimuoverli semplicemente o sostituirli con una versione falsa o un messaggio silly (abbia divertimento). Altrimenti, dovete zona binaria la buona—fortuna eseguibile! Le versioni recenti di LEGATURA possono essere configurate per permettere le richieste di versione dagli indirizzi specifici soltanto.
· Configuri la LEGATURA respingono il trasferimento di zona tranne negli assistenti autorizzati (quali gli schiavi di DNS).
|
|