티스토리 뷰
[MAIL보안] DMARC (Domain-based Message Authentication Reporting Conformance) 메일 보안 - 3
종벌🍀 2023. 2. 3. 16:14메일서버를 운영하다보면 메일 헤더를 위변조해서 스팸을 발송하거나
내부 메일계정이 탈취되었을때 릴레이로 메일서버를 직접적으로 거치지 않고도 스팸이 발송될 수 있다.
그래서 메일서버 앞단에 스팸보안 장비를 둬서 스팸 송/수신을 걸러내기도 하지만
내부 메일계정이 탈취되어 스팸릴레이에 이용 될 경우 내 도메인이 신뢰도 하락으로 각종 사이트에서 차단 걸릴 수 있다.
계정 유출이 안되게 하는 것도 중요하고 내 메일서버에서 발송된 메일이 정상발송인지도 확인해주면 더 좋다.
이런 점으로 작년에 적용한 메일보안 국제표준 기술 3가지를 간단히 기술해보려고 한다.
그 3가지는 SPF, DKIM, DMARC 인데 이번 포스트는 DMARC 설정 방법을 설명해본다.
SPF, DKIM 을 설정하였다면 DMARC를 반드시 적용하기 바란다.
DMARC (Domain-based Message Authentication Reporting Conformance)
DMARC 란, 수신측이 발신자(From) 도메인 DNS에 SPF, DKIM 인증과 DMARC 인증으로 스팸처리를 하고, 실패시 발신담당자에게 실패내용을 보고합니다.
앞선 SPF와 DKIM과 다르게 발신자 도메인(From)으로 DNS에 질의하여
spf, dkim 인증이 유효한지, 실패시 보고서를 어떻게 발송할지를 정하여 엄격하게 검증할 것인지 유연하게 검사할 것인지를 판별한다.
dmarc DNS 레코드는 아래와 같다.
_dmarc.sample.co.kr text =
"v=DMARC1; p=none; sp=none; adkim=r; aspf=r; rua=mailto:test@sample.co.kr"
위 레코드를 해석해보면
sample.co.kr 도메인의 dmarc 조건은 실패시(p, sp) 수신서버는 아무처리 하지말고 DKIM(adkim) 과 SPF(aspf)를 유연하게(서브도메인도 인정) 인증해주고 인증실패시 test@sample.co.kr 로 집계한 실패보고서를 보내달라
보통 작성하는 레코드는 아래와 같은데
- v : 버전 - DMARC1
- p, sp(서브도메인) : 실패시 처리 정책 - none, quarantine, reject
- pct : 정책 적용 비중 - 기본값(100) ~ 0
- adkim : DKIM 일치한지 - s, r(기본값)
- aspf : SPF 일치한지 - s, r (기본값)
- rua : 집계한 실패보고서 수신주소
- fo : 실패보고서 생성 기준 - 0, 1, d, s
처음 dmarc 를 적용했을때는
p=none 으로 하고 pct=100 으로 하여 실패보고서를 받아 분석해보는 것이 좋습니다.
처음부터 강하게 적용하면 정상적인 메일도 다 스팸처리 당할 수 있음...
그후에 점차 강화하려면
p=quarantine 으로 하고 pct=10 정도로 해서 실패보고서를 받고 점차 pct 를 증가하는게 좋습니다.
앞선 spf 나 dkim은 MAIL FROM과 발신자 도메인(From)의 관계를 검증하지 않기에 변조된 스팸 공격에 허점이 있었습니다.
그러나 dmarc는 From = MAIL FROM 관계를 검증하기 때문에 수신을 걸러낼 수 있게 됩니다.
메일 국제표준기술을 적용하면서 여러 국내/외 사이트들의 메일을 조사하였는데
내가 조사했던 국외 사이트들은 거의 90% 정도가 SPF, DKIM, DMARC를 적용한 것을 확인했는데
국내 사이트들은 10%도 안되어 있는 것을 볼 수 있었다.
조사에 따르면 19년도 경 국내에 적용된 메일서버는 1% 미만 수준이었다고 한다.
내가 봤을땐 현재도 10%가 안될 것으로 생각된다.
대기업들도 상당 수 되어있지 않았기 때문.
필자는 개발자이지만 개발을 하다보면 서버도 들여다봐야되고
서버를 들여다보면 보안도 설정해야하는 상황들이 생기는 것 같다.
나는 반년전에 해당 기술을 메일서버에 적용했지만
한번 정리하기 위해 이렇게 포스팅을 남겨본다.
참고사이트
'보안 > 메일보안' 카테고리의 다른 글
[MAIL보안] spf, dkim, dmarc 설정 확인하기(feat.nslookup) (0) | 2024.04.12 |
---|---|
[MAIL보안] DKIM (Domain Keys Identified Mail) 메일 보안 - 2 (1) | 2023.01.30 |
[MAIL보안] SPF (Sender Policy Framework) 메일 보안 - 1 (2) | 2023.01.27 |