CAA 기록이란?
CAA (Certificate Authority Authorization) 레코드는 인증서 권한 (CAs)가 도메인에 SSL/TLS 인증서를 발급 할 수있는 DNS 레코드 유형입니다. CAA는 CA를 공격자가 손상하는 경우에도 보안 제어로 행동합니다.
왜 CAA 기록 매트
CAA 레코드없이, 신뢰할 수있는 CA의 수백은 도메인에 대한 인증서를 발급 할 수 있습니다. 이것은 위험을 만듭니다:
- CA Compromise : 신뢰할 수있는 CA가 손상되면 공격자는 도메인에 대한 인증서를 얻을 수 있습니다.
- Mis-issuance : CAs 가끔 문제 인증서 잘못된
- 사회 공학 : 공격자는 CA를 발급하는 허가 된 인증서로 속할 수 있습니다.
CAA 레코드는 귀하의 도메인에 대한 문제를 해결할 수 있는 제한으로 공격 표면을 감소시킵니다.
CAA 작품
1. Domain 소유자 출판 DNS의 CAA 레코드
2. Certificate requester 인증서에 대한 CA 요청
3. CA 체크 도메인에 대한 CAA 레코드
4. CA 문제 허가 된 경우 (또는 CAA 레코드가 존재하지 않음)
5. 권한이 없으면 CA는 요청을 거부해야합니다.
Mandatory CA 체크인
2017년 9월 현재 CAA 레코드를 확인해야 합니다. 이것은 CA/Browser Forum Baseline 요구 사항의 일부입니다.
CAA 기록 체재
example.com. IN CAA 0 issue "letsencrypt.org"
유형:
- 0: 플래그 (0 = 비범성, 128 = 비중)
- issue/issuewild/iodef: 재산 태그
- "letsencrypt.org"**: 속성 값 (허가 된 CA)
회사 소개
| 제품 정보 | 제품정보 | 이름 * |
|---|---|---|
| 관련 기사 | 모든 인증서의 CA 승인 | 문제 "letsencrypt.org" |
| 비밀번호 | Wildcard 인증서의 CA 승인 | 문제가 "digicert.com" |
| 아이 데프 | 법적 고지 | iodef "메일:security@example.com" |
CAA 기록 예제
단일 CA (Let의 암호화 만)
example.com. CAA 0 issue "letsencrypt.org"
# # # # 여러 CA
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issue "digicert.com"
example.com. CAA 0 issue "sectigo.com"
와일드카드 제한
일반 certs에 대한 암호화를 허용, 야생 카드에 대한 DigiCert:
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issuewild "digicert.com"
Deny 모든 (인증서 없음)
인증서가 없는 도메인에 대한 유용한 정보:
example.com. CAA 0 issue ";"
보고
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 iodef "mailto:security@example.com"
일반적인 CA 식별자
| · | 인증현황 |
|---|---|
| 암호화하자 | letsencrypt.org |
| DigiCert 정보 | digicert.com |
| Sectigo (코도) | sectigo.com |
| 사업영역 | globalsign.com |
| 바로가기 | godaddy.com |
| 아마존 320 | amazon.com |
| Google Trust 서비스 | 피키.goog |
정확한 식별자에 대한 CA의 문서를 확인합니다.
CAA 기록 구현
##DN 공급자를 통해
대부분의 DNS 제공 업체는 CAA 레코드 지원이 있습니다.
지역 파일
; Allow Let's Encrypt and DigiCert
@ IN CAA 0 issue "letsencrypt.org"
@ IN CAA 0 issue "digicert.com"
@ IN CAA 0 iodef "mailto:security@example.com"
CAA 소개
CAA 기록은 DNS hierarchy를 따릅니다:
- example.com가 CAA 레코드가있는 경우 하위 도메인에 적용
- Subdomains는 자신의 CAA 레코드를 가질 수 있습니다 (유효한 부모)
- CAA 레코드 없음 = 어떤 CA는 발급 할 수
example.com. CAA 0 issue "letsencrypt.org" ; Applies to all
api.example.com. CAA 0 issue "digicert.com" ; Override for api
CAA 기록 확인
디지:dig example.com CAA
; ANSWER SECTION:
example.com. 300 IN CAA 0 issue "letsencrypt.org"
DomScan 사용 :
curl "https://domscan.net/v1/health?domain=example.com"
# Reports hasCAA in security details
CAA 모범 사례
1. Always는 CAA를 구성합니다: 당신의 공격 표면 감소
2. 모든 CA를 포함 : CDN / 클라우드 공급자 CA를 잊지 마세요
3. iodef 설정 : 권한이 없는 시도
4. : CA를 검증하면 여전히 문제가 발생할 수 있습니다.
5. Keep 레코드 업데이트 : 인증서 요청하기 전에 새로운 CA 추가
일반적인 CAA 문제
Certificate renewal failed : CAA 레코드에 CA는 인증서가 만료되기 전에 추가 CDN 인증서가 실패 : CDN 공급자의 CA는 CDN이 사용중인 인증 확인 미싱 하위 도메인 CAA **: 아동은 부모 CAA를 상속하여 필요한 경우 특정 레코드를 설정CAA는 모든 도메인이 구현되어야하는 단순하지만 강력한 보안 제어입니다.