요약

  • 일반적인 전수 탐색에는 /64가 여전히 너무 크지만, 예측 가능한 인터페이스 식별자와 운영 데이터는 유용한 탐색 범위를 훨씬 작은 후보 집합으로 축소할 수 있습니다.
  • 탐색 증거는 관측 지점에 종속됩니다. DNS, 플로우 기록, 이웃 캐시, 능동 프로브는 서로 다른 집단을 드러내므로, 그중 어떤 것도 완전한 기기 목록에 대한 영수증이 아닙니다.

2008년 Tim Chown은 IPv6가 네트워크 스캐닝에 미칠 영향을 다룬 IETF 문서를 집필했습니다. 그 산술은 안심시켰지만 마법적이지는 않았습니다. 희소하게 채워진 IPv6 서브넷은 스캐너에게 IPv4보다 훨씬 많은 빈 주소를 통과하게 하지만, 순차 번호, 공개된 DNS 레코드, 기타 단서는 여전히 유용한 표적을 노출할 수 있었습니다. 이 문서는 운영자에게 희소성만으로 보안을 담보하지 말라고 경고했습니다.

8년 뒤 Chown은 자신의 이전 문서를 공식 대체한 문서의 저자로 이름을 올렸습니다. Fernando Gont와 함께 집필한RFC 7707은 산술을 유지하면서 운영 모델을 바꿨습니다. 그 5년의 배포 증거는 관련 질문이 공격자가 /64의 모든 주소를 훑을 수 있는지 여부가 아니라, 공격자가 네트워크가 주소를 구성하는 방식과 관측 데이터를 어디서 흘려보내는지를 학습한 뒤 얼마나 많은 추측이 남는가라는 것임을 보여주었습니다.

이것이 바로 지속적인 기여입니다. IPv6는 탐색 문제를 제거하지 않았습니다. 대신 그것을 후보 생성 문제로 바꿨습니다.

주소 계획은 노출 표면의 일부입니다

인터페이스 식별자는 64비트를 차지할 수 있지만, 그 비트가 항상 64비트의 불확실성을 담는 것은 아닙니다. RFC 7707은 익숙한 운영 습관이 만들어낸 지름길들을 정리했습니다.

순차적으로 할당된 DHCPv6 풀은 유효 범위를 8~16개의 가변 비트로 압축할 수 있습니다.::1,::25,::80으로 끝나는 수동 할당 서버는 하위 바이트 또는 서비스 포트 관례를 드러냅니다. IPv4 주소에서 파생된 식별자는 훨씬 작은 IPv4 후보 집합을 물려받습니다. Modified EUI-64 식별자에 기반한 구식 SLAAC 체계는 제조사 구조를 노출합니다. 벤더 접두사가 한번 알려지면 남은 탐색은 24비트 패밀리로, 일부 가상머신 배포에서는 더 좁은 벤더 고유 범위로 좁혀질 수 있습니다.

이것들은 보편적인 스캔 시간이 아닙니다. 배포된 정책에 대한 조건부 서술입니다. 무작위로 선택된 식별자가 RFC에 하위 바이트 패턴이 나열되어 있다고 해서 그 패턴을 갖게 되지는 않습니다. 반대로 /64를 할당하더라도 조직이 사람의 기억에 맞춘 주소로 채우면 명목상의 불확실성은 회복되지 않습니다.

이 구분은 주소 계획을 단순한 행정 워크시트가 아니라 통제 표면으로 만듭니다. SLAAC, DHCPv6, 수동 할당에 대한 정책은 외부인이 이용할 수 있는 규칙성을 결정합니다. 이후RFC 8064는 링크 계층 파생 안정 식별자 대신 RFC 7217 기반의 안정적이고 의미상 불투명한 식별자를 기본 선택으로 권고했습니다. 이 권고는 상관관계 추적, 스캐닝, 기기별 노출을 줄이면서 운영상 필요한 경우 안정 주소를 유지합니다. 다만 주소를 접근 통제 규칙으로 바꾸지는 않습니다.

정찰은 스캔 없이 시작될 수 있습니다

RFC 7707은 스캐너를 벗어났을 때 가장 유용합니다. 공개 DNS는 필연적으로 메일 릴레이와 웹 서비스를 식별합니다. 허용적인 존 전송, 예측 가능한 호스트명, 역방향 DNS 구조는 더 많이 노출할 수 있습니다. 공개 아카이브, 검색 색인, P2P 시스템은 이미 사용 중인 것으로 확인된 주소를 제공할 수 있습니다.

네트워크 내부에서는 증거가 더 풍부해집니다. 이웃 캐시는 링크에서 만난 피어를 기록합니다. 라우팅 테이블과 라우팅 프로토콜은 접두사와 인프라를 드러냅니다. 구성 파일과 로그는 의존 관계를 기억합니다. IPFIX는 특정 익스포터를 통과한 발신 주소를 열거할 수 있습니다. 접근이 적절히 통제되지 않으면 SNMP는 이웃 및 경로 상태를 노출할 수 있습니다. 수동 패킷 관측은 단말이 통신했다는 이유만으로 주소를 제공합니다.

각 출처는 네임스페이스 전체를 검색하지 않는다는 점에서 강력합니다. 그리고 각각에는 경계가 있습니다. 공개 AAAA 레코드는 어떤 이름이 주소를 공개했다는 것만 증명하며, 서비스가 지금 수신 대기 중임을 증명하지 않습니다. IPFIX 익스포터는 자신의 관측 지점을 통과하는 트래픽만 보며, 침묵하는 노드나 다른 곳의 링크 로컬 교환은 보지 못합니다. 이웃 캐시는 국소적이고 일시적입니다. 프로브에 대한 응답은 특정 패킷과 정책 조건 하에서 한 주소가 응답했음을 보여줄 뿐이며, 침묵은 부재, 필터링, 절전, 잘못된 프로브 중 무엇이든 의미할 수 있습니다.

결과는 하나의 마스터 진실이 아니라 증거 영수증의 집합입니다. 주소, 기기 신원, 서비스 가용성, 행정적 소유, 침해는 별개의 주장입니다. 출처 없이 이들을 결합하면 IPv6의 규모가 한때 제공한다고 여겨졌던 허황된 확신이 재현됩니다.

방어자는 더 어려운 거울 문제를 안고 있습니다

공격자는 유용한 표적 하나만 있으면 될 수 있습니다. 운영자는 무엇이 놓쳤는지 알아야 합니다. 바로 이 비대칭성 때문에RFC 9099는 IPv6 자산 목록을 잡무가 아니라 보안 요구사항으로 다룹니다.

이 문서는 여러 방법의 혼합을 권고합니다. 수동 IPFIX는 감시 라우터를 통과한 트래픽을 보낸 노드를 효율적으로 찾지만 침묵하는 노드와 링크 로컬 주소는 놓칩니다. 이웃 캐시 수집은 특정 링크의 링크 로컬 참여자를 복구할 수 있습니다. 전체 노드 멀티캐스트 질의는 로컬 세그먼트에서 도움이 될 수 있습니다. DNS, 로그 분석, 서비스 탐색이 추가 시야를 더합니다. 어느 것 하나만으로는 자산 목록이 완성되지 않습니다.

실질적인 통제는 따라서 대조 체계입니다. 권위 있는 IP 주소 관리와 DHCPv6 임대 이력은 존재해야 하는 것을 기술합니다. SLAAC와 라우터 광고 정책은 주소가 어떻게 형성될 수 있는지 기술합니다. 이웃 및 스위치 관측은 로컬에서 나타난 것을 기술합니다. 플로우 텔레메트리는 선정된 경계를 통과한 것을 기술합니다. DNS와 서비스 카탈로그는 조직이 의도적으로 공개한 것을 기술합니다. 능동 검증은 선택한 주소와 서비스가 응답하는지 확인합니다.

이 목록들 사이의 차이가 신호입니다. 관측됐으나 할당되지 않은 기기는 관리되지 않는 것일 수 있습니다. 한번도 관측되지 않은 할당은 낡았거나 침묵하거나 텔레메트리 경로 밖일 수 있습니다. 소유자 없는 공개 기록은 방치된 노출일 수 있습니다. 서비스 카탈로그에 없는 응답자는 문서화되지 않은 의존 관계일 수 있습니다. 불일치는 조사되어야 하며, 그 자체로 귀속은 아닙니다.

Chown의RFC 5157에서 RFC 7707로의 개정은 두 가지 대칭적 신화를 거부하기 때문에 가치가 있습니다. 첫째는 IPv6를 작은 IPv4 서브넷처럼 스캔할 수 있다는 신화입니다. 둘째는 큰 주소 공간이 자산 목록, 필터링, 호스트 보안을 대신할 수 있다는 신화입니다. 주소 정책과 관측 지점이 그림에 들어오는 순간 둘 다 무너집니다.

출처