Qualcuno che utilizza lo stesso server DNS come me può dirottare i miei domini?


48

Quando registro un nuovo dominio, lo invio al mio provider di hosting assegnandogli i suoi server dei nomi di dominio nelle impostazioni del registar. Ad esempio, con Digital Ocean, inserisco quanto segue:

ns1.digitalocean.com
ns2.digitalocean.com
ns3.digitalocean.com

Aggiungo quindi le impostazioni del dominio nel record A del mio server. Mi è appena venuto in mente che chiunque nello stesso provider di hosting può aggiungere un record A con un dominio di mia proprietà.

C'è qualcosa che impedisce che ciò accada? se 2 server diversi che utilizzano lo stesso server dei nomi di dominio tentano di assegnare un dominio a se stessi tramite i record A, dove si risolverà il dominio quando lo si inserisce nel browser? cosa impedisce le collisioni di nomi di dominio sullo stesso server DNS?


7
Digital Ocean lo impedisce, per prima cosa. Basta provare a entrare in un record per un dominio voi non possedete.
Michael Hampton

4
La domanda è: come fanno a sapere chi possiede il dominio? è il primo arrivato, il primo servizio? quindi chi aggiunge prima il record A, può usare il dominio?
Eran Galperin,

16
@EranGalperin Hello! Sono un dipendente di DigitalOcean. La prima persona che aggiunge un dominio al proprio account può impostare record per esso, ma abbiamo una procedura per stabilire la proprietà in caso di conflitti.
Jacob,

1
Problemi come questo sono il motivo per cui i maggiori provider DNS (come le soluzioni di rete) sono anche registrar DNS. Possono gestire entrambi i passaggi contemporaneamente e assicurarsi che le cose siano sincronizzate.
Barmar

Come ha detto @Barmar sopra, la maggior parte dei registrar fornisce anche l'hosting DNS, il che evita il problema che hai descritto, anche se lo scenario sembra improbabile e banale da risolvere.
Fred Thomsen il

Risposte:


60

Non importa la sezione dei commenti qui sotto, e non importa le risposte precedenti nella cronologia delle modifiche. Dopo circa un'ora di conversazione con gli amici (grazie @joeQwerty, @Iain e @JourneymanGeek), e alcuni hacking gioviale intorno siamo arrivati ​​al fondo sia della tua domanda che della situazione nel suo complesso. Ci scusiamo per la fragilità e l'incomprensione della situazione completamente all'inizio.

Passiamo attraverso il processo:

  1. Si acquista wesleyisaderp.comsu, diciamo, NameCheap.com.
  2. Namecheap come registrar sarà il luogo in cui popolerai i tuoi record NS. Supponiamo che tu voglia effettivamente ospitare la zona DNS su Digital Ocean.
  3. Punta i record NS del tuo nuovo dominio lucido verso ns1.digitalocean.come ns2.digitalocean.com.
  4. Tuttavia, diciamo che sono stato in grado di determinare che avevi registrato quel dominio e inoltre hai cambiato i tuoi record NS in Digital Ocean . Poi ti ho battuto su un account Digital Ocean e ho aggiunto la zona wesleyisaderp.com alla mia.
  5. Cerchi di aggiungere la zona nel tuo * account * , ma Digital Ocean afferma che la zona esiste già nel loro sistema! Oh no!
  6. I CNAME wesleyisaderp.coma wesleyisbetterthanyou.com.
  7. Ne deriva l'ilarità.

Alcuni amici e io abbiamo appena giocato a questo esatto scenario, e sì, funziona. Se @JoeQwerty acquista un dominio e lo indirizza ai server dei nomi Digital Ocean, ma ho già aggiunto quella zona al mio account, allora sono il caposquadra e posso farne quello che voglio.

Tuttavia, considera che qualcuno dovrebbe prima aggiungere la zona al proprio account DNS e quindi dovresti indirizzare i tuoi record NS ai server dei nomi dello stesso host per far accadere qualcosa di nefasto. Inoltre, in quanto proprietario del dominio, puoi cambiare i record NS ogni volta che vuoi e spostare la risoluzione lontano dall'host della zona non valida.

La probabilità che ciò accada è un po 'bassa per non dire altro. Si dice che, statisticamente, puoi mescolare un mazzo di 52 carte da gioco e ottenere un ordine che nessun altro umano ha mai ottenuto e nessun altro umano lo farà mai. Penso che lo stesso ragionamento esista qui. La probabilità che qualcuno lo sfrutti è così bassa e ci sono scorciatoie migliori che probabilmente non accadranno in natura per caso.

Inoltre, se possiedi un dominio in un registrar e qualcuno capita di aver creato una zona su un fornitore come Digital Ocean con cui ti scontri, sono sicuro che se fornisci la prova della proprietà, chiederebbero alla persona che ha creato il zona nel loro account per rimuoverlo poiché non esiste alcun motivo per esistere in quanto non sono il proprietario del nome di dominio.

Ma che dire di A records

La prima persona su cui avere una zona, ad esempio Digital Ocean, sarà quella che la controlla. Non è possibile avere più zone identiche sulla stessa infrastruttura DNS. Quindi, ad esempio, usando i nomi sciocchi sopra, se ho wesleyisaderp.com come zona su Digital Ocean, nessun altro sull'infrastruttura DNS di Digital Ocean può aggiungerlo al proprio account.

Ecco la parte divertente: ho davvero aggiunto wesleyisaderp.com al mio account Digital Ocean! Vai avanti e prova ad aggiungerlo al tuo. Non farà male a niente.

Di conseguenza, non è possibile aggiungere un record A a wesleyisaderp.com. È tutto mio.

Ma per quanto riguarda...

Come sottolineato da @Iain di seguito, il mio punto 4 sopra è in realtà troppo dettagliato. Non devo aspettare, complottare o intrigare affatto. Posso solo creare migliaia di zone in un account e poi sedermi e aspettare. Tecnicamente. Se creo migliaia di domini e poi aspetto che vengano registrati, e quindi spero che utilizzino gli host DNS su cui ho impostato le mie zone ... forse posso fare qualcosa di brutto? Può essere? Ma probabilmente no?

Ci scusiamo con Digital Ocean e NameCheap

Nota che Digital Ocean e NameCheap non sono univoci e non hanno nulla a che fare con questo scenario. Questo è un comportamento normale. Sono irreprensibili su tutti i fronti. Li ho appena usati da quando è stato dato l'esempio, e sono marchi molto noti.


2
Suppongo che se vuoi davvero scherzare con qualcuno, potresti creare ad esempio un Ae un MXRR con TTL molto lunghi, che punta a un host che controlli e martellare i comuni server DNS pubblici (come Google, forse?). Una variante dell'avvelenamento da cache ...
un CVn del

4
È anche banale mostrare la proprietà del dominio essendo in grado di cambiare quali server ns sono indicati in modo che, anche se qualcuno lo facesse, potrebbe essere chiarito relativamente rapidamente se il loro servizio clienti è buono.
JamesRyan,

3
I record TXT di @JamesRyan vengono utilizzati per dimostrare la proprietà in casi come questo.
user9517 supporta GoFundMonica il

4
@Wesley Questo è corretto. Abbiamo una procedura in atto per gestire i casi di conflitti di zona con il nostro servizio DNS.
Jacob,

7
Una strana situazione in cui ciò potrebbe essere più probabile è quella in cui il dominio è stato precedentemente registrato e utilizzato in Digital Ocean, quindi è scaduto / non è stato rinnovato ma la zona non è stata eliminata da digitalocean. Qualcuno in seguito lo acquisisce come un "nuovo" dominio (ignaro del fatto che era precedentemente di proprietà), quindi tenta di creare la zona in Digital Ocean. Ciò potrebbe essere evitato solo se l'host DNS elimina periodicamente le zone per le quali non è più il nameserver. (senza i metodi di risoluzione dei conflitti sopra menzionati)
Ashley,

32

Oltre all'eccellente risposta di Wesley, vorrei aggiungere che esiste già una soluzione per impedirlo. Si chiama DNSSEC.

Le basi sono queste:

  • Registri il tuo dominio (andrò con il nome eminente wesleyisaderp.comqui, solo perché.)
  • Registri i tuoi server dei nomi con il tuo registrar, di solito tramite un'interfaccia web con cui esegui l'autenticazione con una combinazione nome utente / password.
  • Si crea anche una coppia di chiavi pubblica / privata e si carica la chiave pubblica nel registrar sotto forma di un record DNSKEY. (È così che il registrar può impostare la catena di fiducia per i server root per il dominio di primo livello - in questo caso, i server root per .com.) Ancora una volta, si carica questo quando si accede con il proprio nome utente / password combo, quindi è collegato ai tuoi domini e non a quelli di qualcun altro.
  • Vai al nameserver, inserisci i tuoi record e firmi il file di zona risultante con la tua chiave privata. Oppure, se hai un'interfaccia web per il tuo servizio di hosting DNS, carica la chiave privata in modo che possano firmare il file della zona.
  • Quando Wesley cerca così bruscamente di dirottare il tuo dominio e CNAME wesleyisbetterthanyou.com, i suoi record non saranno accettati dai server del dominio radice .com perché non sono firmati con la chiave giusta. Se il tuo provider di hosting DNS è intelligente, controllerà immediatamente e non gli permetterà nemmeno di provare ad aggiungere record a quel dominio a meno che non abbia la chiave privata giusta.
  • Quando inserisci i tuoi record, saranno firmati con la chiave giusta, quindi funzioneranno.
  • Ora puoi sederti e ridere di Wesley.

(Nel caso originale, quello descritto da Wesley, l'errore principale sarebbe che Digital Ocean non ha verificato la proprietà di un dominio prima di consentire a qualcuno di impostare i record DNS per esso. Sfortunatamente, non sono soli in questo; lo so di almeno un registrar svedese con gli stessi problemi.)


1
Curioso, in che modo un provider di hosting di zona DNS non DNSSEC verifica la proprietà prima di consentire la creazione di una zona? Ho anche provato questo usando Amazon Route53 e posso creare qualsiasi zona che desidero.
Wesley,

Probabilmente non lo faranno, richiederebbe una prova differita e un controllo degli errori. Solo indovinando, eliminare-su-errore potrebbe essere ancora possibile con alcuni trucchi ux (fumo-schermo).
Sampo Sarrala,

@Wesley Non ho considerato la meccanica. Ma almeno, una sorta di controllo sul record whois o lo stesso tipo di controlli che i venditori di certificati SSL economici hanno funzionato. Se possono farlo, perché non possono ospitare le aziende?
Jenny D dice Reinstate Monica il

1
@JennyD Convenienza, soprattutto! Questo tipo di dirottamento del dominio è abbastanza raro e abbastanza rilevabile che è più facile ripararlo quando succede che far saltare ogni utente legittimo attraverso i cerchi per impedirlo.
duskwuff,

@duskwuff Quando la convenienza e il conflitto di sicurezza, la convenienza di solito vince ... Sono d'accordo che il dirottamento del dominio sarà probabilmente raro - ma che dire di semplici errori, senza intenzioni malvagie? IMAO, è sconsiderato degli hoster DNS di non eseguire alcuna forma di controllo.
Jenny D dice Reinstate Monica il

6

Starai bene fintanto che rivendicherai la proprietà del dominio su DigitalOcean (ovvero associandolo al tuo account) prima di dire al registrar di usare i propri server dei nomi.

Se qualcuno ha già associato il tuo dominio al proprio account, lo scoprirai prima che i nameserver di DigitalOcean diventino autorevoli. E se ciò accade, parla con DigitalOcean di come far partire quella persona dal suo account.

In linea con le migliori pratiche, {ns1, ns2, ns3} .DigitalOcean.com non fungono da risolutori ricorsivi per domini ospitati altrove. Se lo facessero, e se i server ospitati da DigitalOcean usassero quei server come risolutori generici, allora ci sarebbe un problema molto più grande. Nonostante sia noto che si tratta di una cattiva pratica, probabilmente non è così difficile trovare provider di hosting che sbagliano, il che apre possibilità di abuso.


Quindi se DigitalOcean non è ancora autorevole per il dominio e molti potenziali clienti affermano entrambi di possedere il dominio, come farebbe DigitalOcean a sapere quale dei potenziali clienti sta dicendo la verità? Avranno il primo accesso per creare record e una scadenza per aggiornare i record NS al fine di dimostrare il controllo sul dominio? O forniranno a ciascuno dei potenziali clienti un sottoinsieme diverso di server autorevoli da inserire nei record NS?
Kasperd,

2
@kasperd i legittimi proprietari un punto che NS registra dove vogliono e quindi configurano ad esempio un record TXT che dimostra di essere i proprietari perché contiene informazioni univoche fornite dal fornitore del servizio. Certo, è un po 'un palaver, ma per le rare occasioni in cui ciò potrebbe accadere è un po' più facile che avere tutti dimostrare la proprietà prima di portarli a bordo.
user9517 supporta GoFundMonica il

@kasperd Spesso il record whois identifica il legittimo proprietario, anche se a volte le persone hanno motivo di oscurare tali informazioni. In ogni caso, se dici a DO di associare il dominio al tuo account in modo da poterlo rendere autorevole, DO presumibilmente dà all'impostore una linea temporale per aggiornare il registrar o rinunciare all'associazione di dominio a DO. Il legittimo proprietario potrebbe dover aspettare un po ', tutto qui.
MC0e

0

Penso che questo problema significhi che nessuno dovrebbe usare tali nameserver (come Digital Ocean) come risolutori, dal momento che chiunque può creare un nameserver per un dominio esistente su di essi. La battaglia per il controllo del dominio è irrilevante in quanto la proprietà del dominio può essere dimostrata facilmente, ma il fatto che qualcuno possa ad esempio dirigere qualsiasi dominio esistente che NON è già ospitato su Digital Ocean, ovunque lo desideri.

In conclusione: non fidarti dei server DNS di alcun servizio di hosting che non richiede una prova della proprietà del dominio (fatto facilmente e rapidamente ad esempio con il metodo suggerito sopra: aggiungendo prima un record TXT con un certo valore sul dominio , questo è ciò che fanno Microsoft O365 e Google per esempio).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.