DNS 프라이버시, ODoH 릴레이 서버로 강화!

by DD
2주 전
조회수 8

DNS 프라이버시(DNS Privacy) 강화를 위해 ODoH 릴레이 서버 구축 및 배포

기존 DNS 서비스의 계정 요구(Account Requirement)제한적 익명성(Limited Anonymity) 문제 해결

HPKE(Hybrid Public Key Encryption) 기반의 암호화 기술을 활용하여 데이터 미저장 정책(Zero-Retention Policy) 구현

eTLD+1(effective Top Level Domain + 1) 검사를 통해 릴레이와 타겟 간의 동일 운영자 문제 방지

ODoH(Oblivious DNS over HTTPS)의 작동 방식

ODoH는 클라이언트 IP 주소(Client IP Address)와 쿼리를 분리하여 DNS 프라이버시를 강화한다. 구체적으로, 클라이언트는 타겟의 HPKE 공개 키(Public Key)로 쿼리를 암호화하고, 릴레이는 IP 주소를 확인하지만 쿼리는 암호문으로 처리한다. 타겟은 릴레이의 IP 주소만 확인하며, 쿼리는 복호화된다. 응답은 대칭 키(Symmetric Key)로 암호화되어 릴레이를 거쳐 클라이언트로 전송된다. 이러한 구조는 데이터 미저장 정책(Zero-Retention Policy)을 가능하게 한다.

릴레이 서버 구축의 기술적 과제

릴레이 서버 구축에는 여러 기술적 과제가 따른다. 특히, SSRF(Server-Side Request Forgery) 공격을 방지하기 위한 호스트 이름 검증이 중요하다. 저자는 RFC 1035 ASCII 레이블, IDN 미지원, IP 리터럴 금지 등 엄격한 정규 표현식(Regex)을 사용하여 검증을 수행했다. 또한, 릴레이와 타겟이 동일한 운영자에 의해 운영되는 것을 방지하기 위해 eTLD+1(effective Top Level Domain + 1) 검사를 수행하여 데이터 격리 아키텍처(Data Isolation Architecture)를 구현했다.

ODoH의 한계점 및 개선 방향

ODoH는 타겟이 쿼리를 확인할 수 있다는 근본적인 한계를 가진다. 또한, 소규모 릴레이에서는 트래픽 분석을 통해 사용자를 식별할 수 있다. 저자는 이러한 문제를 해결하기 위해 릴레이 사용량 증가와 패딩 트래픽(Padding Traffic)을 제안한다. 공개 키 배포(Public Key Distribution)의 중앙 집중화 문제 해결을 위해 Pkarr 기반의 타겟 키 배포를 고려할 수 있다. DNSSEC(DNS Security Extensions)는 ODoH와 함께 사용하여 응답의 무결성을 보장해야 한다.

커뮤니티의 반응 및 논의

커뮤니티에서는 ODoH의 ECH(Encrypted Client Hello) 미지원으로 인한 익명성 저하에 대한 의문이 제기되었다. 또한, 진정한 익명 DNS 구현의 어려움에 대한 논의가 있었다. 릴레이 서버 구축의 기술적 세부 사항과 함께, Numa를 활용한 ODoH 클라이언트 및 릴레이 서버 구축 방법에 대한 관심이 높았다. HPKE(Hybrid Public Key Encryption)와 같은 암호화 기술에 대한 이해를 바탕으로, DNS 프라이버시 강화에 대한 다양한 의견이 제시되었다.

Show HN: Running the second public ODoH relay