Alguém que usa o mesmo servidor DNS que eu seqüestra meus domínios?

43

Quando eu registro um novo domínio, eu o envio para o meu provedor de hospedagem, atribuindo a ele seus servidores de nome de domínio nas configurações do cadastre. Por exemplo, com o Digital Ocean, eu insiro o seguinte:

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

Depois, adiciono as configurações de domínio no registro A do meu servidor. Aconteceu-me que qualquer outra pessoa no mesmo provedor de hospedagem pode adicionar um registro A com um domínio que possuo.

Existe algo que impeça isso? se dois servidores diferentes que usam o mesmo servidor de nomes de domínio tentarem atribuir um domínio a eles mesmos por meio dos registros A, onde o domínio realmente resolveria quando você os digitasse no navegador? o que impede colisões de nomes de domínio no mesmo servidor DNS?

    
por Eran Galperin 19.12.2015 / 07:25

4 respostas

57

Nunca se importa com a seção de comentários abaixo e você nunca se importa com as respostas anteriores no histórico de edições. Após cerca de uma hora de conversa com amigos (obrigado @joeQwerty, @Iain, e @JourneymanGeek), e com alguns hacks joviais, chegamos ao fim da questão e da situação como um todo. Desculpe por brusqueness e incompreensão a situação completamente no início.

Vamos percorrer o processo:

  1. Você compra wesleyisaderp.com em, digamos, NameCheap.com.
  2. Namecheap como seu registrador será onde você preencherá seus registros NS. Digamos que você realmente queira hospedar a zona DNS no Oceano Digital.
  3. Você aponta os registros NS do novo domínio brilhante para ns1.digitalocean.com e ns2.digitalocean.com .
  4. No entanto, digamos que eu consiga determinar que você registrou esse domínio, e, além disso, que você alterou seus registros do NS para o Digital Ocean . Então eu te bati em uma conta da Digital Ocean e adicionei a zona wesleyisaderp.com à minha.
  5. Você tenta adicionar a zona à conta * seu * , mas a Digital Ocean diz que a zona já existe em seu sistema! Oh não!
  6. eu CNAME wesleyisaderp.com a wesleyisbetterthanyou.com .
  7. Hilaridade segue.

Alguns amigos e eu acabamos de interpretar esse cenário exato e, sim, funciona. Se a @JoeQwerty compra um domínio e aponta para os servidores de nomes do Oceano Digital, mas eu já tinha essa zona adicionada à minha conta, então eu sou o mestre da zona e posso fazer com o que eu quero.

No entanto, considere que alguém teria que primeiro adicionar a zona à sua conta de DNS e, em seguida, você teria que apontar seus registros de NS para os servidores de nomes desse mesmo host para que algo nefasto acontecesse. Além disso, como proprietário do domínio, você pode alternar os registros NS a qualquer momento e afastar a resolução do host da zona ruim.

A probabilidade de isso acontecer é um pouco baixa, para dizer o mínimo. Diz-se que, estatisticamente, você pode embaralhar um baralho de 52 cartas de baralho e obter uma ordem que nenhum outro humano jamais conseguiu, e nenhum outro humano jamais conseguirá. Eu acho que o mesmo raciocínio existe aqui. A probabilidade de alguém explorar isso é muito baixa, e existem atalhos melhores que provavelmente não acontecerão na natureza por acidente.

Além disso, se você possui um domínio em um registrador e alguém criou uma zona em um provedor como a Digital Ocean com a qual você colide, tenho certeza de que, se você fornecer prova de propriedade, ele perguntará à pessoa que fizeram a zona em sua conta para removê-la, pois não há motivo para existir, já que não são o proprietário do nome de domínio.

Mas e os registros A

A primeira pessoa a ter uma zona, por exemplo, a Digital Ocean, será aquela que a controla. Você não pode ter várias zonas idênticas na mesma infraestrutura de DNS. Então, por exemplo, usando os nomes tolos acima, se eu tiver o wesleyisaderp.com como uma zona no Digital Ocean, ninguém mais na infra-estrutura do DNS da Digital Ocean pode adicioná-lo à sua conta.

Aqui está a parte divertida: eu realmente adicionei o wesleyisaderp.com à minha conta do Oceano Digital! Vá em frente e tente adicioná-lo ao seu. Não vai doer nada.

Então, como resultado, você não pode adicionar um registro A ao wesleyisaderp.com. É tudo meu.

Mas e sobre ...

Como @Iain apontou abaixo, meu ponto # 4 acima é realmente muito detalhado. Eu não tenho que esperar ou plotar ou planejar nada. Eu posso apenas criar milhares de zonas em uma conta e depois sentar e esperar. Tecnicamente Se eu fizer milhares de domínios, e então esperar que eles sejam registrados, então espero que eles usem os hosts DNS nos quais eu configurei minhas zonas ... talvez eu possa fazer algo meio ruim? Talvez? Mas provavelmente não?

Desculpas para o Oceano Digital & NameCheap

Observe que o Oceano Digital e o NameCheap não são exclusivos e não têm nada a ver com esse cenário. Esse é um comportamento normal. Eles são inocentes em todas as frentes. Eu os usei desde que esse foi o exemplo dado, e eles são marcas muito conhecidas.

    
por 19.12.2015 / 07:31
31

Além da excelente resposta de Wesley, gostaria de acrescentar que já existe uma solução para evitar isso. É chamado DNSSEC.

O básico é este:

  • Você registra seu domínio (eu vou com o nome eminente wesleyisaderp.com aqui, só porque.)
  • Você registra seus servidores de nomes em seu registrador, geralmente por meio de uma interface da Web à qual você se autentica com uma combinação de nome de usuário / senha.
  • Você também cria um par de chaves pública / privada e carrega sua chave pública no registrador na forma de um registro DNSKEY. (É assim que o registrador pode configurar a cadeia de confiança para os servidores raiz para o domínio de nível superior - nesse caso, os servidores raiz para .com .) Novamente, você faz upload disso quando está conectado com o seu próprio nome de usuário / senha combo, então ele está conectado ao seu (s) domínio (s) e não ao de outra pessoa.
  • Você acessa o servidor de nomes, insere seus registros e assina o arquivo de zona resultante com sua chave privada. Ou, se você tiver uma interface da Web para seu serviço de hospedagem DNS, faça o upload da chave privada para eles para que eles possam assinar o arquivo de zona para eles.
  • Quando Wesley tenta rudimentar seu domínio e CNAME para wesleyisbetterthanyou.com , os registros dele não serão aceitos pelos servidores de domínio raiz .com porque eles não estão assinados com a chave certa. Se o seu provedor de hospedagem DNS for inteligente, eles verificarão isso logo de cara e nem permitirão que ele tente adicionar registros a esse domínio, a menos que ele tenha a chave privada correta.
  • Quando você insere seus próprios registros, eles serão assinados pela chave certa, para que funcionem.
  • Agora você pode sentar e rir de Wesley.

(No caso original, o que Wesley descreve, o principal erro seria que a Digital Ocean não verificou a propriedade de um domínio antes de permitir que alguém configurasse registros DNS para ele. Infelizmente, eles não estão sozinhos neste Eu conheço pelo menos um registrador sueco com os mesmos problemas.)

    
por 19.12.2015 / 10:31
5

Você ficará bem desde que reivindique a propriedade do domínio na DigitalOcean (ou seja, associe-o à sua conta) antes de solicitar que o registrador use seus servidores de nome.

Se alguém já tiver associado seu domínio a sua conta, você descobrirá antes que os servidores de nomes da DigitalOcean se tornem autoritativos. E se isso acontecer, fale com a DigitalOcean sobre fazer com que essa pessoa seja expulsa da conta.

De acordo com a melhor prática, {ns1, ns2, ns3} .DigitalOcean.com não atua como resolvedores recursivos para domínios hospedados em outros lugares. Se o fizessem, e se os servidores hospedados pela DigitalOcean usassem esses servidores como resolvedores de propósito geral, haveria um problema muito maior. Por tudo isso, isso é bem conhecido por ser uma prática ruim, provavelmente não é tão difícil encontrar provedores de hospedagem que erram, o que abre possibilidades de abuso.

    
por 19.12.2015 / 11:07
0

Acho que esse problema significa que ninguém deve usar esses servidores de nomes (como a Digital Ocean) como seus resolvedores, já que qualquer um pode criar um servidor de nomes para um domínio existente. A batalha pelo controle do domínio é irrelevante, já que a propriedade do domínio pode ser provada facilmente, mas o fato de alguém poder, por exemplo, direcionar qualquer domínio existente que NÃO esteja hospedado no Oceano Digital, para onde quiser.

Resumindo: não confie nos servidores DNS de qualquer serviço de hospedagem que não exija prova de propriedade de domínio (fácil e rapidamente feito, por exemplo, pelo método sugerido acima: adicionando um registro TXT com um determinado valor primeiro domínio, é o que a Microsoft O365 e o Google fazem, por exemplo).

    
por 16.12.2016 / 22:10