DNS over TLS와 DNS over HTTPS의 비교 | 안전한 DNS

DNS 쿼리는 일반 텍스트로 전송되므로 누구나 읽을 수 있습니다. HTTPS를 통한 DNS 및 TLS를 통한 DNS는 DNS 쿼리 및 응답을 암호화하여 사용자 브라우징을 안전하고 비공개로 유지합니다. 그러나 두 방법 모두 장단점이 있습니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • DNS에 더 강력한 보안이 필요한 이유와 DNS 개인 정보 보호가 중요한 이유 이해하기
  • TLS를 통한 DNS와 HTTPS를 통한 DNS의 작동 방식과 두 방식의 차이점 알아보기
  • 두 접근 방식의 장단점 설명
  • TLS/HTTPS를 통한 DNS와 DNSSEC의 비교

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

모든 Cloudflare 요금제에 포함된 무료 DNS

DNS에 추가 보안 계층이 필요한 이유는?

DNS는 인터넷의 전화번호부입니다. DNS 확인자는 사람이 읽을 수 있는 도메인 이름을 컴퓨터가 읽을 수 있는 IP 주소로 변환합니다.기본적으로 DNS 쿼리 및 응답은(UDP를 통해) 일반 텍스트로 전송되므로 네트워크, ISP, 전송을 모니터링할 수 있는 모든 사람이 읽을 수 있습니다.웹 사이트에서 HTTPS를 사용하더라도 해당 웹 사이트로 이동하는 데 필요한 DNS 쿼리가 노출됩니다.

이러한 개인 정보 보호의 부족은 보안과 경우에 따라 인권에 큰 영향을 미칩니다. DNS 쿼리가 비공개가 아닌 경우 정부에서 인터넷을 검열하고 공격자가 사용자의 온라인 행동을 스토킹하기가 더 쉬워집니다.

공격자는 보호되지 않은 DNS 트래픽을 봄

암호화되지 않은 일반적인 DNS 쿼리는 우편을 통해 보낸 엽서와 같다고 생각하면 됩니다. 우편을 취급하는 사람은 뒷면에 쓰여진 텍스트를 엿볼 수 있으므로 중요한 정보나 개인 정보가 포함된 엽서를 우편으로 보내는 것은 현명하지 않습니다.

TLS를 통한 DNS 및 HTTPS를 통한 DNS는 악의적인 당사자, 광고주, ISP 등이 데이터를 해석할 수 없도록 일반 텍스트 DNS 트래픽을 암호화하기 위해 개발된 두 가지 표준입니다.비유를 계속하자면, 이 표준은 우편물을 통과하는 모든 엽서 주위에 봉투를 넣어 누군가가 자신이 하는 일을 엿보려 한다는 걱정 없이 누구나 엽서를 보낼 수 있도록 하는 것을 목표로 합니다.

TLS 또는 HTTPS를 통해 보호되는 DNS 쿼리, 공격자가 차단됨

TLS를 통한 DNS란?

TLS를 통한 DNS, 즉 DoT는 DNS 쿼리를 암호화하여 안전하고 비공개로 유지하는 표준입니다.DoT는 HTTPS 웹 사이트에서 통신을 암호화하고 인증하는 데 사용하는 것과 동일한 보안 프로토콜인 TLS를 사용합니다.(TLS는 "SSL"이라고도 합니다.)DoT는 DNS 쿼리에 사용되는 사용자 데이터그램 프로토콜(UDP) 위에 TLS 암호화를 추가합니다.DoT는 또한 DNS 요청 및 응답이 경로상 공격을 통해 변조되거나 위조되지 않도록 합니다.

HTTPS를 통한 DNS란?

HTTPS를 통한 DNS 또는 DoH는 DoT의 대안입니다.DoH를 사용하면 DNS 쿼리 및 응답이 암호화되지만, UDP를 통해 직접 전송되는 대신 HTTP 또는 HTTP/2 프로토콜을 통해 전송됩니다.DoT와 마찬가지로 DoH는 공격자가 DNS 트래픽을 위조하거나 변경할 수 없도록 합니다.DoH 트래픽은 다른 HTTPS 트래픽처럼 보입니다(예:웹 사이트 및 웹 앱과의 일반적인 사용자 중심 상호 작용 – 네트워크 관리자의 관점에서)

2020년 2월, Mozilla Firefox 브라우저는 기본적으로 미국 사용자를 위해 DoH를 활성화하기 시작했습니다. Firefox 브라우저의 DNS 쿼리는 DoH에 의해 암호화되며 Cloudflare 또는 NextDNS로 이동합니다. 다른 몇 가지 브라우저도 DoH를 지원하지만, 기본적으로 켜져 있지는 않습니다.

잠깐만요, HTTPS도 암호화에 TLS를 사용하지 않나요? TLS를 통한 DNS와 HTTPS를 통한 DNS는 어떻게 다를까요?

각 표준은 별도로 개발되었으며 자체 RFC* 설명서가 있지만, DoT와 DoH의 가장 중요한 차이점은 각기 사용하는 포트입니다. DoT는 포트 853만 사용하는 반면, DoH는 다른 모든 HTTPS 트래픽도 사용하는 포트인 포트 443을 사용합니다.

DoT에는 전용 포트가 있으므로 네트워크 가시성이 있는 사람은 요청 및 응답 자체가 암호화되더라도 들어오고 나가는 DoT 트래픽을 볼 수 있습니다. 반면, DoH를 사용하면 DNS 쿼리 및 응답이 모두 동일한 포트에서 들어오고 나가므로 다른 HTTPS 트래픽 내에서 위장됩니다.

*RFC는 "의견 요청"을 의미하며, RFC는 개발자, 네트워킹 전문가, 사고 리더가 인터넷 기술 또는 프로토콜을 표준화하려는 집단적 시도입니다.

포트란?

네트워킹에서 포트는 다른 컴퓨터로부터의 연결에 열려 있는 컴퓨터의 가상 장소입니다. 네트워크로 연결된 모든 컴퓨터에는 표준 포트 개수가 있으며 각 포트는 특정 유형의 통신을 위해 예약되어 있습니다.

항구에 있는 선박용 포트를 생각해보세요. 각 선적 포트에는 번호가 매겨져 있으며 다른 종류의 선박은 화물 또는 승객을 하역하기 위해 특정 선적 포트로 이동해야 합니다. 네트워킹도 같은 방식입니다. 특정 유형의 통신은 특정 네트워크 포트로 이동해야 합니다. 차이점은 네트워크 포트가 가상이라는 것입니다. 네트워크 포트는 물리적 연결이 아닌 디지털 연결을 위한 장소입니다.

DoT와 DoH 중 어느 것이 더 나을까요?

이는 논쟁의 여지가 있습니다. 네트워크 보안 관점에서 보면 DoT가 거의 틀림없이 더 좋습니다. DoT는 네트워크 관리자가 악의적 트래픽을 식별하고 중지시키는 데 중요한 DNS 쿼리를 모니터링하고 차단할 수 있게 해줍니다. 한편 DoH 쿼리는 일반 HTTPS 트래픽에 숨겨져 있으므로 다른 모든 HTTPS 트래픽까지도 차단하지 않고는 쉽게 차단할 수 없습니다.

그러나 개인 정보 보호 관점에서 DoH가 거의 틀림없이 바람직합니다. DoH를 사용하면 DNS 쿼리가 HTTPS 트래픽의 더 큰 흐름 내에서 숨겨집니다. 따라서 네트워크 관리자에게는 가시성이 떨어지지만, 사용자에게는 더 많은 개인 정보가 제공됩니다.

Cloudflare의 무료 DNS 확인자인 1.1.1.1은 DoT와 DoH를 모두 지원합니다.

TLS/HTTPS를 통한 DNS와 DNSSEC의 차이점은?

DNSSECDNS 확인자와의 통신에서 DNS 루트 서버 및 권한 있는 이름 서버의 ID를 확인하기 위한 보안 확장 프로그램 집합입니다.DNSSEC는 여러 다른 공격 중에서도 DNS 캐시 포이즈닝을 방지하도록 설계되었습니다.DNSSEC는 통신을 암호화하지 않습니다.반면 TLS 또는 HTTPS를 통한 DNS는 DNS 쿼리를 암호화합니다.1.1.1.1은 DNSSEC도 지원합니다.

1.1.1.1에 대해 자세히 알아보려면,1.1.1.1이란?을 참조하세요