실험 더 해봐야 확실해지겠지만, DoH 트래픽만이 보여주는 특징들 존재해
[보안뉴스 문가용 기자] DNS를 암호화 한 트래픽인 DoH(DNS-over-HTTPS)에서 이상한 점이 하나 발견됐다. 이 때문에 트래픽을 따로 복호화 하지 않아도 DoH 트래픽을 식별하는 게 가능하게 된다고 한다.

[이미지 = iclickart]
DoH 프로토콜은 인터넷 전체의 보안을 향상시키기 위해 고안된 것으로, “HTTP를 통해 DNS 요청을 보내고 응답을 받을 때, TLS를 사용하도록 한다”는 걸 기본 개념으로 삼고 있다. DNS 트래픽을 암호화 할 경우 서버의 인증이 요구되고, 따라서 수동적인 감시와 능동적인 우회 공격을 모두 완화시킬 수 있게 된다.
하지만 보안 전문가인 요하네스 울리히(Johannes Ullrich)에 의하면 호스트에서 오가는 트래픽을 관찰함으로써 DoH 트래픽을 식별하는 게 가능하다고 한다. 울리히는 “실험을 위해 파이어폭스를 사용했다”고 먼저 밝혔다. “모질라는 2017년부터 DoH에 관심을 갖고 연구해왔으며, 따라서 암호화와 관련된 다양한 실험을 하기에 알맞습니다.”
실험은 몇 분 동안 진행됐다. 물론 비교적 짧은 시간 동안 진행된 실험이라 확실하게 결론을 내릴 수는 없지만, 울리히는 “DoH 트래픽을 구분해낸다는 것이 꽤나 쉬운 일이라는 건 충분히 밝힐 수 있었다”고 말한다.
“저는 먼저 tcpdump를 실행했고, 그 후 파이어폭스를 켜서 여러 사이트를 돌아다녔습니다. 다음으로는 패킷 캡처 파일과 SSL 키 로그파일을 와이어샤크(Wireshark) 3.1.0 버전에 로딩시켰습니다. 와이어샤크는 DoH와 HTTP2를 뛰어나게 지원하며, 파이어폭스는 DoH에 HTTP2를 사용합니다.”
그런 후 울리히는 디스플레이 필터인 ‘dns and tls’를 간단히 적용함으로써 DoH 트래픽을 찾아낼 수 있었다. DoH 트래픽 전체가 울리히의 호스트와 mozilla.cloudflare-dns.com 사이에 성립된 연결에만 묶여 있다는 것 또한 발견할 수 있었다.
조사를 더 진행했을 때 DoH의 페이로드 길이에 관한 정보 역시 DoH 트래픽을 분간해내는 데 활용할 수 있다는 사실도 알아낼 수 있었다. “DNS 요청과 응답은 수백 바이트 정도에 불과합니다. 그것보다 크지 않아요. HTTPS 연결의 경우에는 ‘최대 전송 단위(maximum transmission unit, MTU)’을 거의 끝까지 채우려는 경향을 보입니다.”
즉 TLS 연결이 꽤나 긴 시간 동안 유지되는데, 페이로드의 용량이 1 킬로바이트를 넘는다면, DoH 연결이 성립되어 있다고 봐도 된다는 게 그의 주장이다. 그는 앞으로 시간을 더 투자해 이 연구를 진행할 예정이며, “보다 확실한 결론이 나올 때까지 실험을 반복할 것”이라고 밝혔다.
그의 상세한 실험 과정과 진행 상황은 여기(https://isc.sans.edu/diary/Is+it+Possible+to+Identify+DNS+over+HTTPs+Without+Decrypting+TLS%253F/25616)에 공개되어 있다.
3줄 요약
1. DNS 요청과 응답을 암호화 한다는 개념의, ‘DNS over HTTPS’
2. 그런데 트래픽을 관찰하고 적절한 필터를 적용하면 복호화 없이 DoH 트래픽 식별 가능.
3. 오래 시간 진행되고 용량이 킬로바이트를 넘어간다면 DoH 트래픽일 가능성 높음.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>