SMTP TLS 보고란 무엇인가요?
TLS 보고는 도메인 소유자가 이메일 전송 문제를 정확히 찾아내는 데 도움이 되는 역방향 피드백 메커니즘입니다. 이 메커니즘은 MTA-STS 프로토콜과 함께 작동하며 TLS 핸드셰이크 실패로 인해 전달되지 않은 반송된 이메일에 대한 추적 데이터를 제공합니다.
TLS 보고란 무엇인가요?
TLS 보고(TLS-RPT)는 이메일이 TLS로 암호화되지 않았을 때 발생하는 이메일 전송 문제를 보고하기 위한 표준입니다. 이 표준은 도메인으로 전송되는 모든 이메일이 TLS로 암호화되도록 보장하는 데 사용되는 MTA-STS 프로토콜을 지원합니다.
- TLS 암호화는 사용자에게 전송되는 모든 이메일이 안전하게 전달되도록 보장합니다. 그러나 공격자는 이메일이 암호화되지 않은 상태로 사용자에게 전송되어 내용을 읽거나 변조할 수 있는 공격 유형인 SMTP 다운그레이드를 시도할 수 있습니다. MTA-STS는 모든 이메일이 사용자에게 전송되기 전에 암호화되도록 함으로써 이러한 공격을 방지합니다. 공격자가 SMTP 다운그레이드를 시도하면 이메일이 전혀 전송되지 않습니다.
- 도메인 소유자는 TLS-RPT를 통해 암호화되지 않고 전송에 실패한 모든 이메일에 대한 보고서를 받을 수 있습니다. 그러면 문제의 원인을 파악하고 전송 문제를 해결할 수 있습니다.
TLS 보고는 어떻게 작동하나요?
TLS 보고(TLS-RPT)는 이메일이 전달되기 전에 암호화되도록 하는 MTA-STS 프로토콜을 지원하는 데 사용됩니다. 일반적으로 이메일 서버 또는 MTA(메일 전송 에이전트)는 수신 서버와 협상하여 STARTTLS 명령을 지원하는지 확인합니다. 지원되는 경우 이메일은 TLS로 암호화되어 수신 MTA로 전달됩니다.
공격자는 이 시점에서 송신 및 수신 MTA 간의 협상을 차단하는 SMTP 다운그레이드 공격을 시도할 수 있습니다. 발신 서버는 수신자가 STARTTLS 명령을 지원하지 않는다고 판단하고 TLS 암호화 없이 이메일을 전송하여 공격자가 이메일 내용을 보거나 변조할 수 있도록 합니다.
도메인에서 MTA-STS를 구현하면 보내는 서버가 메시지를 보내기 전에 메시지를 암호화하도록 의무화합니다. 공격자가 SMTP 다운그레이드 공격을 시도하면 이메일이 전송되지 않습니다. 이렇게 하면 모든 이메일에 TLS 암호화가 반드시 적용됩니다.
TLS 보고(TLS-RPT)는 도메인을 통해 전송된 이메일에 배달 문제가 발생하면 도메인 소유자인 회원님에게 알려주는 프로토콜입니다. SMTP 다운그레이드 또는 기타 문제로 인해 이메일 전송에 실패한 경우 실패한 이메일의 세부 정보가 포함된 JSON 파일 형식의 보고서를 받게 됩니다. 이 보고서에는 이메일 내용이 포함되어 있지 않습니다.
SMTP TLS 보고가 필요한 이유는 무엇인가요?
도메인 소유자는 MTA-STS 사용 도메인에서 보낸 이메일에 대한 TLS 암호화 실패로 인한 이메일 전송 문제에 대한 정보를 지속적으로 파악하는 것이 중요합니다. TLS 보고는 이러한 정보를 제공함으로써 이를 가능하게 합니다.
피드백 보고서를 받으려면
메시지 전송에 실패한 경우 TLS 보고를 통해 알림을 받을 수 있습니다.
이메일 채널에 대한 종합적인 가시성 확보하기
TLS 보고를 통해 이메일 흐름에 대한 세분화된 인사이트 확보
배달 문제 해결
TLS 보고를 통해 문제의 원인을 파악하고 지체 없이 문제를 해결할 수 있습니다.
TLS 보고를 활성화하는 단계
TLS-RPT용 TXT 레코드를 만들고 DNS에 게시하여 도메인에 대한 TLS 보고를 사용 설정할 수 있습니다. 이 레코드는 하위 도메인에 게시해야 합니다. _smtp._tls.yourdomain.com에 게시해야 합니다.
TLS-RPT 레코드 예시
v=TLSRPTv1; rua=mailto:[email protected];
제공된 TLS 보고 레코드의 구성 요소를 분석해 보겠습니다:
v=TLSRPTv1:
이 태그는 사용 중인 TLS-RPT 프로토콜의 버전을 지정합니다. 이 경우 "TLSRPTv1" 은 TLS-RPT 프로토콜의 첫 번째 버전을 나타냅니다.
rua=mailto:[email protected]:
이 태그는 집계된 보고서(RUA)에 대한 보고 URI를 나타냅니다. 수신자의 메일 서버가 TLS 실패에 대한 집계된 보고서를 보낼 위치를 지정합니다. rua는 "집계된 보고서에 대한 보고 URI"를 의미합니다.
값 "mailto:[email protected]" 는 이메일 주소를 지정하는 URI입니다. ([email protected]) 를 지정하는 URI입니다.
실제로는 다음과 같이 대체합니다. "yourdomain.com" 을 이러한 보고서를 수신하려는 실제 도메인 이름으로 대체합니다.
각 구성 요소의 중요성:
v=TLSRPTv1:
사용 중인 TLS-RPT 프로토콜의 버전을 나타냅니다. 이는 보고서 발신자와 수신자 간의 호환성을 보장하는 데 도움이 됩니다.
rua=mailto:[email protected]:
TLS 전송 문제에 대한 집계된 보고서의 수신처를 지정합니다. 보고 이메일 주소를 제공하면 도메인 소유자는 실패하거나 문제가 있는 TLS 연결에 대한 정보를 받을 수 있습니다. 이 보고서는 이메일 통신과 관련된 잠재적인 보안 또는 구성 문제를 진단하는 데 유용합니다.
TLS 보고 형식 및 보고서 예시
JSON TLS 보고서는 TLS-RPT(전송 계층 보안 보고 정책) 사양에 정의된 특정 형식을 따릅니다. 이 형식은 TLS 암호화와 관련된 이메일 전송 문제에 대한 정보를 전달하는 데 사용됩니다. 다음은 JSON TLS 보고서의 예시입니다:
다음은 이 JSON TLS 보고서의 주요 필드에 대한 분석입니다:
조직: TLS-RPT 레코드를 소유한 도메인 조직입니다.
이메일: 집계된 보고서가 전송되는 이메일 주소입니다.
begin_date: 보고 기간의 시작일입니다.
end_date: 보고 기간의 종료일입니다.
정책: 보고 기간 동안 적용된 정책을 설명하는 정책 객체 배열입니다.
정책: 적용된 정책에 대한 정보를 포함합니다.
정책 유형: 정책 유형(예: TLS 정책의 경우 "정책")을 지정합니다.
정책 문자열: 정책과 연관된 정책 문자열을 지정합니다(예: 엄격한 TLS 정책의 경우 "거부").
요약: 시도한 세션에 대한 요약 정보를 포함합니다.
총_성공_세션_수: 성공적으로 설정된 TLS 세션의 총 개수입니다.
총_실패_세션_수: 총 TLS 세션 실패 횟수입니다.
failure_details: 특정 장애에 대한 세부 정보를 제공하는 객체 배열입니다.
이유: 실패 이유를 나타내는 문자열(예: "인증서_만료됨")입니다.
count: 특정 이유로 실패한 세션의 개수입니다.
TLS 암호화 실패 이유 및 유형
인증서 발급:
- 인증서_만료: 원격 서버에서 제공한 인증서의 만료일이 지나서 암호화를 신뢰할 수 없습니다.
- certificate_not_valid_yet: 원격 서버에서 제공한 인증서가 아직 유효하지 않습니다. 서버 시간이 잘못되었거나 인증서를 너무 일찍 사용했기 때문일 수 있습니다.
- 인증서_취소: 원격 서버에서 제공한 인증서가 보안 문제로 인해 인증 기관에 의해 해지되었습니다.
- 신뢰할 수 없는 인증서: 원격 서버에서 제공한 인증서 체인을 발신자의 메일 서버 또는 클라이언트가 신뢰할 수 없으므로 잠재적인 보안 위험이 있음을 나타냅니다.
- NO_VALID_SIGNATURE: 원격 서버에서 제공한 인증서가 신뢰할 수 있는 인증 기관에서 제대로 서명되지 않아 진위 여부에 대한 우려가 제기됩니다.
- 지원되지 않는_인증서: 원격 서버에서 제공하는 인증서가 발신자의 메일 서버에서 지원하지 않는 암호화 알고리즘 또는 키 길이를 사용하여 보안 연결이 되지 않습니다.
호스트 이름 및 ID 불일치
- 호스트명_불일치: 서버의 인증서에 지정된 호스트 이름이 발신자의 메일 서버가 연결하려는 서버의 호스트 이름과 일치하지 않아 중간자 공격 또는 구성 문제가 있을 수 있음을 나타냅니다.
암호 제품군 및 암호화 구성
- INSECURE_CIPHER_SUITE: 발신자와 수신자의 메일 서버 간에 협상된 암호 집합이 취약하거나 안전하지 않은 것으로 간주되어 통신의 기밀성과 무결성을 잠재적으로 손상시킬 수 있습니다.
- 프로토콜_버전_불일치: 발신자와 수신자의 메일 서버 간에 지원되는 TLS 프로토콜 버전이 일치하지 않아 호환되는 암호화된 연결을 설정하지 못합니다.
- NO_SHARED_CIPHER_SUITE: 발신자와 수신자의 메일 서버 모두 암호화에 사용할 수 있는 공통 암호 집합이 없어 연결이 실패합니다.
핸드셰이크 및 프로토콜 문제
- handshake_failure: 발신자의 메일 서버와 수신자의 메일 서버 간의 초기 TLS 핸드셰이크 프로세스 중에 문제가 발생하여 보안 채널이 설정되지 못했습니다.
- unexpected_message: 발신자의 메일 서버가 TLS 핸드셰이크 프로세스 중에 예기치 않거나 지원되지 않는 메시지를 수신하여 잠재적인 프로토콜 또는 구현 불일치를 나타냅니다.
MTA-STS 정책 문제
- MTA_STS_정책_못찾음: 발신자의 메일 서버가 수신자 도메인에 대한 MTA-STS 정책을 찾을 수 없을 때 이 오류가 발생합니다.
- MTA_STS_정책_무효: 이 오류는 수신자 도메인에 대한 DNS에서 찾은 MTA-STS 정책이 유효하지 않거나 오류가 포함되어 있거나 MTA-STS 사양을 준수하지 않을 때 발생합니다.
- MTA_STS_정책_페치_오류: 발신자의 메일 서버가 수신자 도메인의 DNS 레코드에서 MTA-STS 정책을 검색하는 동안 오류가 발생하면 이 오류가 발생합니다.
- MTA_STS_연결_실패: 발신자의 메일 서버가 MTA-STS를 사용하여 보안 연결을 설정하려고 시도하지만 신뢰할 수 없는 인증서, 지원되지 않는 암호 모음 또는 기타 TLS 문제 등의 이유로 인해 실패할 때 이 오류가 발생합니다.
- MTA_STS_INVALID_호스트명: 이 오류는 MTA-STS 정책에 지정된 수신자 메일 서버의 호스트 이름이 서버의 실제 호스트 이름과 일치하지 않을 때 발생합니다.
- MTA_STS_정책_업그레이드: 발신자의 메일 서버가 MTA-STS를 사용하여 연결을 보안 연결로 업그레이드하려고 시도하지만 수신자의 서버가 업그레이드를 지원하지 않을 때 이 오류가 발생합니다.
PowerDMARC로 간소화된 SMTP TLS 보고
PowerDMARC의 SMTP TLS 보고 환경은 호스팅 서비스를 통해 보안을 개선하는 동시에 생활을 더욱 편리하게 만들어줍니다.
번역된 TLS 보고서
TLS 보고를 위한 복잡한 JSON 보고서가 몇 초 만에 훑어보거나 자세히 읽을 수 있는 간소화된 정보로 변환됩니다.
문제 자동 감지
PowerDMARC 플랫폼은 직면한 문제를 자동으로 정확히 찾아내어 시간 낭비 없이 문제를 해결할 수 있습니다.
- 이메일 암호화란 무엇이며 다양한 유형은 무엇입니까? - 2023, 11월29일
- DMARC 블랙 프라이데이: 이번 홀리데이 시즌에 이메일 강화하기 - 11월 23, 2023
- 2024년 이메일 인증 요건을 업데이트한 구글과 야후 - 2023년 11월 15일