서브도메인 테이크오버 (WEB-47)

WEB-47 Subdomain Takeover

서브도메인 테이크오버:
회사가 AWS CloudFront, GitHub Pages, Shopify 등의 외부 서비스에서 서브도메인을 사용했다가 나중에 제거할 때, DNS의 CNAME 레코드를 삭제하지 않으면 공격자가 해당 외부 서비스에서 같은 도메인을 등록하여 서브도메인을 탈취할 수 있습니다.

DNS 레코드 조회

example.com의 현재 DNS 레코드:

서브도메인 타입 대상 상태
api.example.com CNAME api.example-cdn.com ⚠️ DANGLING
blog.example.com CNAME blog.wordpress.com ⚠️ DANGLING
shop.example.com CNAME shop.shopify.com ⚠️ DANGLING
mail.example.com CNAME mail.sendgrid.com ✓ Active
cdn.example.com CNAME cdn.cloudfront.aws.com ⚠️ DANGLING
static.example.com A 192.0.2.1 ✓ Active

서브도메인 테이크오버 검증

실제 취약점 찾기

실제 서브도메인 테이크오버를 찾으려면:

  1. 대상 도메인의 모든 서브도메인 열거
  2. 각 서브도메인의 DNS 레코드 조회
  3. CNAME이 가리키는 서비스가 실제로 등록되어 있는지 확인
  4. Dangling CNAME 또는 Dead DNS 포인트 찾기
  5. 해당 서비스에서 도메인 등록 시도

dig, nslookup, subdomaintakeover 도구 활용