정보보안기사

[정보보안기사(실기)] SECTION 10 이메일 보안

tnvori 2026. 6. 8. 23:52

메뉴 이름이 "피망"이다. 궁금해서 시켰는데 피망이 아삭하고 고기가 맛있음

  1. 이메일 시스템 구조
    1. 개요
    2. 주요 프로토콜
      • SMTP — 메일 전송 프로토콜
        • TCP 25
        • SMTPS — TCP 465
      • POP3 — 메일 접근 프로토콜
        • 메일 클라이언트(MUA)에서 메일 서버(MTA)로부터 메일을 수신할 수 있도록 해주는 프로토콜. TCP 110
        • 동작 방식 — 클라이언트가 메일을 서버로부터 다운로드한 후 서버에서 해당 메일을 삭제하기 때문에 다른 곳에서 메일 확인 불가능
        • POP3S — TCP 995
      • IMAP — 메일 접근 프로토콜
        • 메일 클라이언트(MUA)에서 메일 서버(MTA)로부터 메일을 수신할 수 있도록 해주는 프로토콜. TCP 143
        • 동작 방식 — 서버로부터 메일 복사
        • IMAPS — TCP 993
    3. 메일 서버 구조
      • MUA
        • 사용자가 메일 송수신하기 위해 사용하는 메일 클라이언트 프로그램
        • 메일을 작성하거나 메일함에 도착한 메일 확인
        • 아웃룩, 선더버드 등
      • MTA
        • 메일 서버 프로그램
        • 수신한 메일 분석하여 수신자가 자신이 아닌 메일 주소라면 해당 주소의 메일 서버로 전송하고 수신자가 자신의 메일 주소라면 MDA를 통해 각 사용자 메일함에 저장하도록 함
        • 센드메일, 큐메일 등
      • MDA
        • 사용자 메일함에 메일을 저장해주는 프로그램
        • 메일이 최종 수신 메일 서버에 도착했을 때 메일 서버는 MDA에 메일을 전달하고 MDA는 해당 사용자 메일함에 메일 저장
        • 프록메일 등
      • MRA
        • 메일 클라이언트가 확인을 요청하는 메일을 사용자 메일함에서 사용자로 전달해주는 프로그램
        • MUA와 MRA 간 통신은 POP3 또는 IMAP 프로토콜 기반
    4. 이메일 시스템 동작 방식
      • 사용자는 MUA를 이용하여 메일 작성 후 SMTP 프로토콜을 통해 클라이언트가 설정한 MTA로 전송
      • MTAS는 메일 큐에 수신한 메일을 임시 저장한 후, 수신한 메일을 분석하여 수신자가 자신이 아니라면 해당 주소의 메일 서버로 SMTP 프로토콜을 통해 전송하고 수신자가 자신이라면 MDA를 통해 각 사용자 메일함에 파일 형태로 저장
        • 수신자 메일 주소의 메일 서버 확인 — 메일 주소에 있는 도메인을 이용하여 MX 레코드에 대한 DNS 질의 수행
      • 사용자가 MUA를 통해 자신의 메일 확인을 요청하면 MRA는 해당 사용자의 메일함에 있는 메일을 클라이언트에 전달

2, SMTP 메일 형식

  1. 개요
    • 텍스트 기반의 프로토콜로 봉투와 메시지 정보를 주고받음
    • 봉투
      • 메일 서버 간에 메일을 주고받기 위한 메일 주소 정보를 담고 있는 부분
      • 메일 수신자에게 전달되는 정보가 아님
      • MAIL FROM — 악의적으로 조작되는 경우 존재
      • RCPT TO
    • 메시지
      • 메일 수신자에게 보이는 메일 내용
      • From
      • To
      • Subject
  2. SMTP 프로토콜 취약점 및 대응 기술
    • 발신 메일 서버 조작
      • 대응 기술 — 수신한 메일이 MAIL FROM에 명시한 발신자 메일 주소의 정당한 메일 서버로부터 온 메일인지 검사할 수 있는 SPF 메일 인증 기술 적용
    • 메일 훔쳐보기 및 조작
      • 대응 기술
        • 발신자 측에서 메일의 메시지에 대한 전자서명을 추가하여 메일의 위변조 여부를 검사할 수 있는 DKIM 메일 인증 기술 적용
        • 메일 서버와 클라이언트 통신 구간 보안 적용이 가능한 SMTPS, POP3S, IMAPS 등의 프로토콜 설정
    • DMARC 메일 인증 기술 적용
      • 인증 정책을 통해 SPF와 DKIM 인증 기술 모두 적용 가능
      • 인증 결과에 대한 모니터링 가능

3. 메일 서버 보안 설정

  1. 개요
    • SMTP 릴레이 — 메일 서버 외부에서 메일 서버를 경유하여 다른 메일 서버로 메일을 발송하는 것
    • 오픈 릴레이 서버
      • 발신자에 대한 IP 메일 계정에 대한 인증 없이 모든 메일 릴레이
      • 스팸 메일 발신자의 메일 서버로 악용
  2. 샌드메일 서버 스팸메일 및 디렉터리
    • /usr/sbin/sendmail — sendmail 주 데몬 실행 파일
    • /usr/sbin/makeup — sumdmail 맵 생성 실행 파일
    • /var/spool/mqueue
    • /var/spool/mail
    • /etc/mail/access
      • 스팸 메일 차단을 위한 설정 파일
      • access 파일은 설정을 위한 텍스트 파일로 실제로 정책을 적용하기 위해서는 makemap 명령을 이용하여 accees.db를 새엉해야 함
    • /etc/mail/sendmail.cf — sendmail 설정 파일
  3. access 설정
    • access {적용 대상 지정} {처리 방식 지정}
    • OK
    • RELAY
    • REJECT — 거부 메시지 전송
    • DISCARD — 메시지 미전송
    • 501 message — 설정한 거부 메시지 전송
  4. 설정 예시
  5. access 파일 적용
    • makemap 명령을 이용하여 access.db를 생성하여 적용
    • makemap hash /etc/mail/access(또는 access.db) < /etc/mail/access

4. 이메일 인증 기술(스팸 메일 방지 기술)

  1. SPF 기술
    1. 개요 — 발신 메일 서버 정보를 사전에 발신 도메인 DNS 서버에 공개적으로 등록함으로써 수신자가 수신한 메일의 발신자 IP 주소가 발신자 메일 주소 도메인의 실제 메일 서버 정보와 일치하는지 검사할 수 있도록 하는 인증 기술
    2. 동작 방식
      • 발신측 — 발신자 도메인의 DNS 서버에 해당 도메인에서 사용하는 발신자 메일 서버 정보와 수신 측 처리 방식을 담고 있는 SPF 레코드 정보를 도메인의 TXT 레코드에 기록하여 등록
      • 수신측 — 수신자 메일 서버는 발신자 도메인에 대한 SPF 레코드를 조회한 후 실제 메일을 발송한 메일 서버의 IP가 조회한 SPF 레코드에 등록된 서버인지 여부와 처리 방식에 따라 수신 여부 결정
    3. SPF 레코드 형식
      • 버전과 하나 이상의 한정자와 메커니즘 조합
      • 한정자 — 메커니즘과 함께 사용되며, 수신측에서 메커니즘과 일치할 경우 어떻게 처리할지 알려주는 역할
          • — 인증 통과
            • 메커니즘과 일치할 경우 인증된 메일 서버로 메일을 통과시키라는 의미
            • 메커니즘에 한정자를 지정하지 않은 경우 기본적으로 적용
          • — 인증 실패 또는 심각한 인증 실패
            • 메커니즘과 일치할 경우 인증되지 않은 메일 서버로 메일을 거부하라는 의미
            • 일반적으로 수신측 메일 서버에서 스팸 메일함에 임시 보관하거나 수신을 거부
        • ~ — 가벼운 인증 실패
          • 메커니즘과 일치할 경우 인증되지 않은 메일 서버로 수신측 메일 서버 정책에 따라 허용 여부를 판단하라는 의미
          • 일반적으로 메일 수신이 허용되거나 거부될 수 있음
        • ? — 중립
          • 메커니즘과 일치할 경우 인증 여부에 대한 판단 정보가 없음을 의미
    • 메커니즘 — 발신 메일 서버의 매칭 방식을 정의하며 순서대로 매칭 여부 판단
      • ip4/ip6
      • unclude — 지정한 도메인에 있는 SPF 레코드 정보 참조
      • all
  2. DKIM 기술
    1. 개요 — 발신자가 발신 메일의 메시지 헤더와 바디에 대한 디지털 서명을 메일 헤더에 삽입하여 수신된 이메일이 위변조되지 않았는지 수신자 측에서 검증할 수 있는 이메일 인증 기술
    2. 동작 방식
      • 발신측 — 발신자 도메인의 DNS 서버에 수신 측에서 디지털 서명을 검증할 수 있는 정보를 담고 있는 DKIM 레코드 정보를 지정한 도메인의 TXT 레코드에 기록하여 등록
      • DKIM 레코드 형식 — 버전(v), 알고리즘(k), 공개키(p)
      • 발신측 — 발신자 메일 서버에서 발신 메일의 메시지 헤더와 바디를 개인키로 서명한 후 서명값을 DKIM-Signature에 추가하여 전송
      • 수신측 — 수신자 메일 서버는 DKIM-Signature 헤더에 있는 정보를 참조하여 공개된 지정한 domainkey 도메인에 대한 DKIM 레코드를 조회한 후 DKIM 레코드에 등록된 공개키와 서명 알고리즘을 이용하여 DKIM-Signature 헤더에 있는 서명값 검증 수행
      • DKIM-Signature 헤더 형식
        • v — 버전
        • a — DKIM 인증 시 사용할 전자서명 알고리즘
        • h — 서명 대상 메시지 헤더 리스트
        • bh — 메시지 바디의 데이터를 서명한 값
        • b — h 태그에 명시한 헤더의 데이터를 서명한 값
  3. DMARC 기술
    1. 개요 — SPF 인증 기술과 DKIM 인증 기술을 모두 적용하여 정당한 발신자인지 여부와 메일의 위변조 여부를 검사하고 수신 측에서 정책 처리 결과에 대한 보고서를 전달함으로써 발신 측에서 메일 모니터링을 할 수 있는 이메일 인증 기술
    2. 동작 방식
      • 발신측 — 발신자 도메인의 DNS 서버에 SPF 레코드와 DKIM 레코드를 우선적으로 등록하고 인증 정책 정보를 담고 있는 DMARC 레코드 정보를 DMARC 용도의 도메인의 TXT 레코드에 기록하여 등록
      • 수신측 — 수신자 메일 서버는 SPF, DKIM 및 DMARC 레코드를 조회하고 DMARC 정책에 따라 인증 수행. 인증에 실패한 메일에 대해서는 DMARC 보고서를 작성하여 발신 측에 전송
  4. 인증 기술 관련 주요 메일 헤더 정보
    • Recieved
      • 실제 메일이 전송된 경로
      • 여러 개인 경우 여러 MTA를 경유했다는 의미. 가장 아래쪽 헤더가 처음 메일을 발송한 메일 서버
      • 형식 — from 발송 호스트(메일 서버) by 수신 호스트(메일 서버) id 메일 고유 식별자 for 수신자 메일 주소 수신 날짜/시간
      • SMTPS를 적용한 경우 확인 가능한 정보 — TLS 버전, 암호 도구 목록
    • Received-SPF
      • 수신자 메일 서버 SPF 인증 결과를 기록하는 헤더
      • Authentication-Results에서도 SPF 인증 결과 확인 가능
      • 인증 결과에 따라 pss 이외에 fail, soft fail, neutral 등
    • Authentication-Results 메시지 헤더
      • 수신 메일 서버에서 SPF, DKIM 및 DMARC 인증 결과를 기록하는 헤더
      • 인증 기술에 따라 pass, fail 등
    • 이메일 인증을 위한 기술적 대응 방안 — SPF 인증 기술을 통해 인증된 발신자 메일 서버로부터 온 메일인지 확인하고 DKIM 인증 기술을 통해 메일의 헤더나 내용이 위변조되지 않았는지 확인하는 한편, DMARC 인증 기술로 SPF와 DKIM의 이중 적용 및 수신이 실패되는 메일에 대한 모니터링 등 필요