요약
- RFC 3655는 AD 비트를 서버 정책을 널리 표시하던 라벨에서, 수정된 규칙에 따라 관련 DNSSEC 데이터가 인증되었음을 나타내는 더 좁은 신호로 바꾸었다.
- 이 비트는 DNS 응답에 대한 서명이 아니라 리졸버의 보고였으며, 리졸버 자체, 네트워크 경로, 사용자가 선택한 신뢰 정책이 타당하다는 증명도 아니었다.
분석
유용한 장면은 작은 애플리케이션이 스텁 리졸버에 이름을 질의하는 상황이다. 스텁은 완전한 DNSSEC 장비를 갖추지 않고, 키 사슬을 따라가고 서명을 가져와 결과를 캐시할 수 있는 재귀 리졸버로 질의를 전달한다. 응답이 돌아왔을 때 헤더의 한 비트가 상류에서 수행된 작업에 관해 스텁에 무언가를 알려줄 수 있다. 어려운 문제는 헤더에 비트가 몇 개 있느냐가 아니다. 그 주장을 할 자격이 누구에게 있고, 그 주장은 어떤 근거를 대표하는가가 문제다.
RFC 2535는 Authenticated Data(AD) 비트에 넓은 의미를 부여했다. 서버가 응답과 권한 데이터를 자신의 정책에 따라 인증했다고 말하는 방식이었다. 2003년 11월에 발표된 RFC 3655는 이 원래 신호가 실무에서 유용하지 않다고 논증했다. 규격을 준수하는 서버는 이미 자신의 보안 정책에 실패한 데이터를 돌려주지 않아야 하며, 주로 서버의 일반적인 필터링 자세를 서술하는 비트는 애플리케이션이 이 응답의 보안 상태를 구분하는 데 도움이 되지 않았다.
수정안은 인계를 더 구체적으로 만들었다. 재귀 서버는 응답 섹션과 권한 섹션의 관련 RRset이 인증 조건을 충족하지 않는 한 AD를 설정해서는 안 되었다. 응답 레코드—그리고 부정 응답을 뒷받침하는 관련 레코드—가 인증되었을 때 비트를 설정해야 했다. 핵심은 모든 DNS 패킷이 각자의 서명을 갖게 되었다는 것이 아니었다. DNSSEC 서명은 리소스 레코드 집합을 인증하며, AD 비트는 이 응답의 레코드에 대한 리졸버 측 판단을 요약한다.
이 구분은 또한 DNS 헤더의 DO와 CD 비트를 AD로 축약할 수 없는 이유를 설명한다. DO는 DNSSEC 레코드를 포함해 달라고 요청하는 것이고, RFC 3655는 AD를 설정하기 전에 DNSSEC 레코드가 요청되었고 관련 SIG 레코드가 돌아왔어야 한다고 요구했다. CD는 해당 질의에 대해 검사를 비활성화한다는 뜻이다. CD가 AD 결과를 자동으로 지우지는 않았다. 서버는 이미 검증된 데이터나 자기 로컬 정책에 따라 허용 가능한 데이터를 여전히 표시할 수 있었다. 이 비트들은 서로 다른 단계—근거 요청, 검사 통제, 결과 보고—를 서술한다.
RFC 3655는 재귀 리졸버를 신뢰의 중개자로 만들었다. 호스트는 모든 애플리케이션이 완전한 검증기를 구현하도록 하지 않고 캐시된 검증 작업을 재사용할 수 있었다. 그러나 스텁은 AD를 자가 인증으로 취급할 수 없었다. 리졸버는 명시적으로 신뢰되어야 했고, 통신은 TSIG나 SIG(0) 같은 보안 채널 또는 메시지 인증으로 보호되어야 했다. 그렇지 않으면 경로상 응답자가 설정한 비트는 검증에 관한 주장일 뿐, 안전하게 전달된 검증 증거가 아니었다.
권한 서버 규칙은 또 다른 이음새를 드러냈다. 보안 존의 권한 서버는 AD를 설정하도록 구성할 수 있었지만, 그것은 명시적 선택이어야 했고 기본값은 아니었다. 문서는 권한 서버가 자신의 존 데이터를 검증할 의무는 없다는 점을 인정했다. 적재 시 또는 모든 질의마다 서명 검증을 수행하는 것은 운영 비용을 유발할 수 있었다. 따라서 권한 응답에 나타난 명확한 AD 비트는 서버가 재귀 방식의 검증을 수행했다는 기본 보증이 아니었다. 클라이언트는 서버의 정책과 신뢰 관계를 알아야 했다.
기본 해제 상태는 오독하기 쉽다. RFC 3655는 불안전한 응답이 AD를 달아서는 안 된다고 했지만, 비트가 해제되어 있다는 사실만으로는 그 데이터가 불안전한 것인지, 리졸버가 검사하지 않은 것인지, 요청된 DNSSEC 레코드가 없는 것인지, 서버가 상태를 주장하지 않기로 한 것인지 소비자에게 알려주지 않았다. 긍정 비트는 신뢰 체계 안에서만 정의된 의미를 갖고, 부정 비트는 완전한 진단이 아니었다.
2년 뒤 RFC 4033, RFC 4034, RFC 4035가 DNSSEC 체계를 개정하며 RFC 3655를 폐기했다. AD 인계는 아키텍처의 일부로 남았지만, 2005년 문서들은 그것을 검증기, 스텁, 권한 서버, 인증 경로를 아우르는 더 완전한 서술 안에 배치했다. RFC 3655는 하나의 좁은 인터페이스에 대한 수리로 읽는 것이 가장 타당하다. 즉, 재귀 리졸버의 평가가 헤더 비트 자체를 암호학적 증명으로 가장하지 않으면서 애플리케이션에 도달하는 방법이었다.
따라서 근거 사다리는 여러 층으로 이루어져 있다. RRSIG는 키 사슬과 신뢰 앵커 아래에서 RRset의 인증을 뒷받침할 수 있다. 검증하는 리졸버는 로컬 상태 판단을 내릴 수 있다. AD 비트는 응답에서 그 판단을 보고할 수 있다. 안전하고 신뢰된 리졸버 채널은 응답을 소비자가 의존하기로 선택한 리졸버에 묶을 수 있다. 그중 어느 하나만으로도 이름의 등록자가 정직하다는 것, 정보가 애플리케이션에 대해 최신이라는 것, 애플리케이션이 안전하게 행동했다는 것은 증명되지 않는다.
출처
- RFC 3655 — Redefinition of DNS Authenticated Data (AD) bit
- RFC 2535 — Domain Name System Security Extensions
- RFC 3225 — Indicating Resolver Support of DNSSEC
- RFC 4033 — DNS Security Introduction and Requirements
- RFC 4034 — Resource Records for the DNS Security Extensions
- RFC 4035 — Protocol Modifications for the DNS Security Extensions
- RFC 2845 — Secret Key Transaction Authentication for DNS (TSIG)
- RFC 2931 — DNS Request and Transaction Signatures (SIG(0))
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





