기술 · 출처 기반 답변

DMARC 집계 보고서 읽는 방법

DMARC 집계 보고서를 읽으려면 수신 메일 서버가 보내는 XML 파일의 압축을 풀고 레코드 태그를 파싱해, 어떤 IP 주소가 내 도메인을 대신해 메일을 보내고 있는지, 그리고 SPF와 DKIM 정렬을 통과하는지 확인해야 합니다. 이 보고서는 원시 XML 형식이므로 대부분의 개발자는 파서나 SendHQ 무료 도구(https://sendhq.cc/tools) 같은 도구로 데이터를 시각화합니다.

XML 구조 이해하기

DMARC 집계 보고서는 XML 스키마를 사용합니다. 보고서에는 발신 IP 주소별로 record 섹션이 있습니다. 각 record에는 발신 IP, 해당 IP에서 보낸 메시지 수, 정책 평가 정보가 들어 있습니다. 정책 평가 섹션에는 메시지가 SPF와 DKIM 검사를 통과했는지 실패했는지, 그리고 그 결과가 헤더 From 도메인과 정렬되었는지가 자세히 나와 있습니다.

SPF와 DKIM 정렬 분석하기

보고서에서 pass 결과는 인증 검사가 성공했다는 뜻이지만, DMARC에서 중요한 것은 정렬입니다. SPF 정렬은 Return-Path의 도메인이 From 헤더의 도메인과 일치할 때 성립합니다. DKIM 정렬은 DKIM 서명의 d= 태그가 From 헤더 도메인과 일치할 때 성립합니다. 둘 다 실패하면 개별 검사 결과와 관계없이 메시지는 DMARC에 실패합니다.

승인되지 않은 발신자 찾기

보고서에서 알 수 없는 IP 주소를 찾아보세요. 어떤 IP에서 SPF와 DKIM에 실패한 메일이 대량으로 나타난다면, 승인되지 않은 발신자이거나 잘못 구성된 서드파티 서비스일 가능성이 높습니다. 이 IP를 알려진 인프라 및 벤더 목록과 비교해 SPF 레코드를 업데이트해야 하는지, 또는 정상적인 파트너에게 DKIM 키를 제공해야 하는지 판단하세요.

Disposition 해석하기

disposition 태그는 현재 DMARC 정책에 따라 수신 서버가 이메일을 어떻게 처리했는지 알려 줍니다. 정책이 p=none이면 disposition은 보통 none이며, 실패했음에도 메일이 전달되었다는 뜻입니다. p=quarantine이면 메일이 스팸함으로 보내졌을 수 있습니다. p=reject이면 메일이 완전히 차단된 것입니다. 이 지표를 활용해 none에서 reject로 안전하게 전환하세요.

팀에서 자주 묻는 질문

DMARC 보고서는 왜 압축된 XML 파일로 전송되나요?

XML은 기계가 처리할 수 있는 구조화된 데이터를 제공하고, 압축은 매일 대량의 집계 데이터를 보내는 데 필요한 대역폭을 줄여 줍니다.

이 보고서는 얼마나 자주 생성되나요?

대부분의 수신 메일 서버는 24시간에 한 번씩 집계 보고서를 보내지만, 시점은 제공업체마다 다릅니다.

집계 보고서와 포렌식 보고서의 차이는 무엇인가요?

집계 보고서는 메일 스트림에 대한 개괄적인 통계를 제공하고, 포렌식 보고서는 실패한 특정 메시지의 상세한 사례를 제공합니다.

1차 출처