요약

  • 1997년 7월 11일, 한 운영자가 자신의 리졸버가www.internic.net을 AlterNIC 주소로 매핑하고 해당 레코드를 추가 데이터로 표시했다고 보고했다.
  • 이 사건은 누가 인기 있는 이름을 등록할 수 있는가를 둘러싼 분쟁에, 별개의 기술적 결함 즉 리졸버가 답변으로 제공해서는 안 되는 매핑을 신뢰하고 보존한 일이 얽혔다.

하나의 웹 주소, 두 종류의 권위

AlterNIC은 상업용 최상위 도메인 등록에서 Network Solutions가 맡은 역할에 도전했다. 분쟁의 쟁점은 누가.com,.net같은 이름을 추가할 수 있는지, 그리고 누구의 규칙 아래에서인지였다. 그러나 남아 있는 기록 중 가장 많은 것을 보여주는 것은 그 논쟁보다 작았다. 1997년 7월 11일, 네트워크 운영자 Kevin Brintnall이 자신의 Visi Internet 네임서버에서 조회 결과와 캐시 덤프를 게시했다.www.internic.net요청은207.51.48.15를 반환했고, 그 주소를 조회하자aragorn.alternic.net으로 확인되었다.

Brintnall의 덤프는 예상치 못한 주소 레코드를addtnl, 즉 DNS 응답에서 추가 데이터를 뜻하는 약어로 표시했다. 그는 또한 자신의 리졸버 루트 캐시에 AlterNIC 힌트가 없었다고 말했다. 이 한 건에서 사용자는 대체 루트를 선택하지 않았다. 재귀 확인을 통해 학습된 답변이, 그 리졸버가 InterNIC 웹 호스트에 대해 반환하는 내용을 바꾸어 놓았다.

이 구분이 중요한 이유는, 논쟁 속 이름들이 서로 다른 역할을 하고 있었기 때문이다. 루트 존은 최상위 이름을 위임한다. 등록기관은 최상위 도메인 아래의 등록을 받아들인다. 재귀 리졸버는 DNS 참조를 따라가며 레코드를 캐시에 보존해 이후 질의를 로컬에서 처리할 수 있게 한다. AlterNIC의 정치적 도전은 네이밍 시스템의 규칙을 겨냔 것이었고, Brintnall의 증거는 한 리졸버에 캐시된 매핑을 보여준 것일 뿐이다. 그것은 AlterNIC이 공개 루트 존을 다시 썼다는 사실을 보여주지 않았다.

캐시가 증명하는 것과 증명할 수 없는 것

DNS 역사 기록으로서 원래의 NANOG 게시물은 이례적으로 구체적이다. 서버 주소, 반환된 A 레코드, 캐시된 출처 주소, 리졸버 자체의 캐시 주석이 모두 담겨 있다. 출처 주소는 AlterNIC 호스트로 매핑되었다. 레코드의addtnl출처는 나중에 WIRED가 보도한 기술적 설명과도 부합한다. DNS 응답은 추가 레코드를 실어줄 수 있고, 부적절하게 신뢰하는 리졸버는 자신이 질의한 이름이 아닌 이름에 대한 레코드 하나를 보존할 수 있다는 것이다.

이 증거는 한 캐시에서의 잘못된 답변 하나를 확립할 뿐이다. 영향을 받은 리졸버를 전수 세거나, 모든 방문자가 리다이렉트되었음을 증명하거나, 공개 루트 서버가 AlterNIC의 통제 아래 있었음을 보여주지는 않는다. 당시 보도들은 “인터넷”이 리다이렉트되었다는 확대된 표현을 사용했다. 패킷 수준의 기록은 그 주장을 좁힌다. 즉 특정 웹 이름에 대해, 리졸버가 권위 있는 답변과 다른 목적지를 제시했다는 것이다. 캐시 덤프의146598값은 그 레코드의 필드일 뿐이며, 전역 장애 지속 시간이나 사용자 수가 아니다.

정치적 맥락은 실제였다. 워싱턴 포스트는 Network Solutions가 NSF와의 협약으로.com,.org,.net에 대한 배타적 등록 권한을 갖고 있었다고 보도했다. AlterNIC은 경쟁 레지스트리로 자신을 내세우며, 운영자가 표현하기로는 NSI의 그 이름들에 대한 권리 주장에 반대했다. 그 계약적 역할은 강력했지만, 모든 이름이나 인터넷 루트 전체의 소유권은 아니었다. AlterNIC으로의 리다이렉트는 그 논거를 사용자들에게 보이게 만들었을 뿐, 공개 네임스페이스를 정의할 정당한 권위가 누구인지를 정해주지는 않았다.

캐시 사건은 정책 결정이 아니었다

대응은 소프트웨어와 운영을 통해 이루어졌다. CERT의 1997년 8월 BIND 권고는 캐시 페이저닝을 다른 서버가 저장한 원격 네임서버 데이터가 클라이언트 프로그램에 제공되는 것으로 정의했다. 이 취약점은 BIND 4.9.6에서 수정되었으며 BIND 8.1.1을 포함한 업그레이드 경로를 권한다고 밝혔다. 그 경고는 AlterNIC만이 아니라 리졸버 행동의 한 부류에 적용되었다.

1997년 7월에 발행된 RFC 2181은 추가 섹션 정보를 DNS 데이터 중 신뢰도가 가장 낮은 부류로 분류하며, 인증되지 않은 추가 레코드는 나중에 답변으로 반환되어서는 안 된다고 명시한다. 이 RFC는 DNS 데이터가 어떻게 다뤄져야 하는지를 명확히 하지만, 이용 가능한 기록은 이 RFC가 이 사건에 대응해 작성되었음을 보여주지 않는다. 표준의 발행이 운영자들이 모든 리졸버를 그에 맞게 업그레이드하거나 구성했음을 증명하지도 않는다.

미국 도메인 이름 논쟁은 자기 나름의 궤적으로 이어졌다. 미국 상무부는 1997년 7월에 공개 의견 수렴 절차를 시작했고, 그린 페이퍼, 화이트 페이퍼, 그리고 1998년의 ICANN 설립이 뒤따랐다. 인터넷 소사이어티의 역사 기록은 이 순서를 담고 있지만, 이를 AlterNIC 리다이렉트로 귀속시키지는 않는다. 2000년에 IAB는 RFC 2826에서 공개 DNS가 일관된 이름을 유지하려면 단일 유일 루트가 필요하다고 주장했다. 이는 후의 기관 입장이지, Brintnall의 캐시에 대한 포렌식적 기술이 아니다.

따라서 이 사건은 두 역사에 동시에 속한다. 하나는 집중된 등록 역할에 대한 항의였고, 다른 하나는 로컬 리졸버가 의심스러운 추가 데이터를 다른 목적지로 바꿀 수 있음을 보여준 운영적 시연이었다. 첫 번째 질문은 누가 이름의 규칙을 정해야 하는가였고, 두 번째는 리졸버가 어떤 데이터를 신뢰해야 하는가였다. 이 둘을 혼동하면 캐시 항목 하나가 루트 존 이전처 보이게 되고, 눈에 보이는 리다이렉트를 보편적 통제의 증거로 잘못 읽게 된다.

출처