나와 같은 DNS 서버를 사용하는 사람이 도메인을 탈취 할 수 있습니까? 제공 업체의 다른 사람이 내가 소유

새 도메인을 등록 할 때 registar 설정에서 도메인 이름 서버를 할당하여 호스팅 공급자에게 보냅니다. 예를 들어, Digital Ocean을 사용하여 다음을 입력했습니다.

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

그런 다음 서버의 A 레코드에 도메인 설정을 추가합니다. 동일한 호스팅 제공 업체의 다른 사람이 내가 소유 한 도메인으로 A 레코드를 추가 할 수 있다는 것이 저에게 일어났습니다.

이것이 발생하는 것을 막는 것이 있습니까? 동일한 도메인 이름 서버를 사용하는 두 개의 다른 서버가 A 레코드를 통해 도메인을 자신에게 할당하려고하면 브라우저에서 도메인을 입력 할 때 도메인이 실제로 해결되는 위치는 무엇입니까? 동일한 DNS 서버에서 도메인 이름 충돌을 방지하는 것은 무엇입니까?



답변

아래 주석 섹션을 신경 쓰지 말고 편집 기록의 이전 답변을 신경 쓰지 마십시오. 약 1 시간 동안 친구들과 대화를하고 (@joeQwerty, @Iain, @JourneymanGeek에게 감사함), 약간의 해킹으로 인해 귀하의 질문과 상황이 모두 바닥에 도달했습니다. 처음에는 멍청하고 상황을 완전히 이해하지 못해서 죄송합니다.

프로세스를 단계별로 살펴 보겠습니다.

  1. wesleyisaderp.comNameCheap.com에서 구매 한다고 가정하겠습니다.
  2. 등록 기관인 Namecheap은 NS 레코드를 채우는 곳입니다. 실제로 Digital Ocean에서 DNS 영역을 호스팅한다고 가정 해 봅시다.
  3. 반짝이는 새 도메인의 NS 레코드를 ns1.digitalocean.com및을 가리 킵니다 ns2.digitalocean.com.
  4. 그러나 도메인을 등록했음을 확인하고 NS 레코드를 Digital Ocean ‘s (으)로 변경했다고 가정 해 보겠습니다 . 그런 다음 Digital Ocean 계정으로 이겼고 wesleyisaderp.com 영역을 내 계정에 추가했습니다.
  5. * your * 계정에 영역을 추가하려고하는데 Digital Ocean은 해당 영역이 시스템에 이미 존재한다고 말합니다. 아뇨!
  6. 에 CNAME wesleyisaderp.com합니다 wesleyisbetterthanyou.com.
  7. 성대가 계속됩니다.

일부 친구와 나는 방금이 정확한 시나리오를 연주했으며, 그렇습니다. @JoeQwerty가 도메인을 구매하여 Digital Ocean 네임 서버를 가리 키지 만 해당 영역이 이미 내 계정에 추가 된 경우 영역 마스터가되어 원하는대로 할 수 있습니다.

그러나 누군가 먼저 영역을 자신의 DNS 계정에 추가해야하고, 악의적 인 일이 발생하기 위해서는 NS 레코드를 동일한 호스트의 이름 서버로 지정해야합니다. 또한 도메인 소유자는 언제든지 NS 레코드를 전환하고 해상도를 불량 영역 호스트에서 멀리 이동할 수 있습니다.

이런 일이 일어날 가능성은 가장 적습니다. 통계적으로, 당신은 52 장의 덱을 섞어서 다른 사람은 얻지 못했고 다른 사람은하지 않을 것을 주문할 수 있다고합니다. 나는 같은 추론이 여기에 있다고 생각합니다. 누군가이 취약점을 악용 할 가능성은 매우 낮으며 더 빠른 지름길이있어 우연히 일어날 수는 없습니다.

또한 레지스트라에서 도메인을 소유하고 있고 누군가가 Digital Ocean과 같은 공급 업체에서 충돌하는 영역을 만든 경우 소유권 증명을 제공하는지 확실하게 알 수 있습니다. 도메인 이름 소유자가 아니기 때문에 계정에서 존을 제거 할 이유가 없으므로 계정에서 존을 삭제하십시오.

그러나 A 레코드는 어떻습니까

예를 들어 Digital Ocean과 같이 영역을 설정 한 첫 번째 사람이 해당 영역을 제어하는 ​​사람이됩니다. 동일한 DNS 인프라에 동일한 영역을 여러 개 가질 수 없습니다. 예를 들어, 위의 어리석은 이름을 사용하여 wesleyisaderp.com을 Digital Ocean의 영역으로 사용하는 경우 Digital Ocean의 DNS 인프라에있는 다른 누구도 자신의 계정에 추가 할 수 없습니다.

재미있는 부분은 다음과 같습니다. 실제로 wesleyisaderp.com을 Digital Ocean 계정에 추가했습니다! 계속해서 당신의 것으로 추가하십시오. 아무것도 아프지 않을 것입니다.

결과적으로 wesleyisaderp.com에 A 레코드를 추가 할 수 없습니다. 다 내 꺼야

하지만 …

@Iain이 아래에서 지적했듯이 위의 4 번 지점은 실제로 너무 장황합니다. 기다릴 필요가 없습니다. 난 그냥 할 수 수천 계정의 영역을 다음 앉아서 기다립니다. 엄밀히 말하면 수천 개의 도메인을 만든 다음 등록 될 때까지 기다렸다가 영역을 설정 한 DNS 호스트를 사용하기를 원한다면 … 아마도? 그러나 아마 아닐까요?

Digital Ocean 및 NameCheap에 대한 사과

Digital Ocean과 NameCheap은 고유하지 않으며이 시나리오와 관련이 없습니다. 이것은 정상적인 동작입니다. 그들은 모든면에서 흠이 없습니다. 나는 그것이 주어진 예이기 때문에 방금 그것들을 사용했으며 그들은 매우 잘 알려진 브랜드입니다.


답변

웨슬리의 훌륭한 답변 외에도 이미 이것을 예방할 수있는 해결책이 있다고 덧붙이고 싶습니다. 이것을 DNSSEC라고합니다.

기본 사항은 다음과 같습니다.

  • 도메인을 등록하셨습니다 ( wesleyisaderp.com여기서 저명한 이름으로 하겠습니다).
  • 일반적으로 사용자 이름 / 암호 콤보로 인증하는 웹 인터페이스를 통해 등록자에 이름 서버를 등록합니다.
  • 또한 공개 / 개인 키 쌍을 생성하고 공개 키를 DNSKEY 레코드 형식으로 등록자에 업로드합니다. (레지스트라가 최상위 도메인의 루트 서버 (이 경우 루트 서버)에 대한 신뢰 체인을 설정하는 방법입니다 .com.) 다시, 자신의 사용자 이름 / 암호로 로그인 할 때이를 업로드합니다. 콤보로 다른 사람이 아닌 도메인에 연결되어 있습니다.
  • 네임 서버로 가서 레코드를 입력하고 개인 영역 키로 결과 영역 파일에 서명합니다. 또는 DNS 호스팅 서비스에 대한 웹 인터페이스가있는 경우 개인 키를 업로드하여 영역 파일에 서명 할 수 있습니다.
  • Wesley가 무례하게 도메인과 CNAME을 도용하려고 시도 할 때 wesleyisbetterthanyou.com올바른 레코드로 서명되지 않았기 때문에 .com 루트 도메인 서버는 자신의 레코드를 수락하지 않습니다. DNS 호스팅 제공 업체가 영리한 경우, 바로 확인하여 올바른 개인 키를 얻지 않는 한 해당 도메인에 레코드를 추가 할 수 없습니다.
  • 자신의 기록을 입력하면 올바른 키로 서명되어 작동합니다.
  • 이제 앉아서 웨슬리를 비웃을 수 있습니다.

(원래의 경우 웨슬리가 묘사 한 주요 오류는 Digital Ocean이 누군가가 도메인에 대한 DNS 레코드를 설정하기 전에 도메인 소유권을 확인하지 않았다는 것입니다. 같은 문제를 가진 스웨덴 등록 기관 중 최소 하나 이상)


답변

등록 기관에 이름 서버를 사용하도록 지시하기 전에 DigitalOcean에서 도메인 소유권을 주장하는 한 (즉, 계정과 도메인을 연결하는 한) 괜찮습니다.

누군가 귀하의 도메인을 자신의 계정과 이미 연결했다면 DigitalOcean 네임 서버가 권한을 갖기 전에 알게 될 것입니다. 그런 경우, DigitalOcean에 연락하여 해당 사람이 자신의 계정에서 부팅되도록하십시오.

모범 사례에 따라 {ns1, ns2, ns3} .DigitalOcean.com은 다른 곳에서 호스팅되는 도메인에 대한 재귀 해결 자로 작동하지 않습니다. 그렇게하고 DigitalOcean이 호스팅하는 서버가 해당 서버를 범용 리졸버로 사용하면 훨씬 더 큰 문제가 발생합니다. 이것이 나쁜 습관으로 잘 알려져 있기 때문에, 잘못 이해 한 호스팅 제공 업체를 찾는 것은 그리 어렵지 않으며, 이는 학대 가능성을 열어줍니다.


답변

이 문제는 누구나 기존 도메인의 이름 서버를 만들 수 있기 때문에 아무도 그러한 이름 서버 (예 : Digital Ocean 등)를 확인 자로 사용해서는 안된다고 생각합니다. 도메인 소유권을 쉽게 입증 할 수 있기 때문에 도메인 제어를위한 전투는 무의미하지만, 누군가가 이미 Digital Ocean에 호스팅되지 않은 기존 도메인을 원하는 곳으로 보낼 수 있다는 사실과 관련이 있습니다.

결론 : 도메인 소유권 증명이 필요하지 않은 호스팅 서비스의 DNS 서버를 신뢰하지 마십시오 (예를 들어 위에서 제안한 방법으로 쉽고 빠르게 수행 됨 : 먼저 도메인에 특정 값을 가진 TXT 레코드 추가) 예를 들어 Microsoft O365와 Google이하는 일입니다.


답변