[이메일 헤더 분석]: (메일)보안 전문가/담당자를 위한 기초 가이드
1. 이메일 헤더란 무엇인가?
이메일 헤더의 정의 및 중요성
이메일 헤더는 이메일 메시지의 메타데이터를 포함하는 부분으로, 발신자, 수신자, 경로 등의 정보를 담고 있습니다. 보안과 스팸 필터링에 매우 중요합니다.
이메일 헤더를 분석하는 이유
헤더 분석을 통해 이메일의 진위를 확인하고, 스팸이나 피싱 메일을 차단할 수 있습니다. 이는 보안 사고를 예방하는 데 큰 도움이 됩니다.
2. 이메일 헤더의 주요 구성 요소
From: 발신자 이메일 주소로, 이메일의 출처를 확인할 수 있습니다.
To: 수신자 이메일 주소로, 이메일이 누구에게 발송되었는지 나타냅니다.
Subject: 이메일 제목으로, 이메일의 내용을 간략하게 나타냅니다.
Date: 이메일이 발송된 날짜와 시간으로, 이메일의 시간 정보를 제공합니다.
Return-Path: 반송 이메일 주소로, 이메일이 반송될 경우 돌아오는 주소입니다.
Received: 이메일이 거친 서버 정보를 나타내며, 이메일의 경로를 추적할 수 있습니다.
Message-ID: 이메일 고유 식별자로, 특정 이메일을 식별하는 데 사용됩니다.
MIME-Version: MIME 버전 정보로, 이메일 내용의 형식에 대한 정보를 제공합니다.
Content-Type: 이메일 내용의 형식 (텍스트, HTML 등)을 나타냅니다.
User-Agent: 이메일 클라이언트 정보로, 이메일을 작성한 소프트웨어에 대한 정보를 제공합니다.
3. 이메일 헤더 분석 방법
이 부분에서는 실제 이메일 헤더 예시를 통해 각 요소를 분석하고, 이를 통해 이메일의 발신 경로를 추적하는 방법을 상세히 설명하겠습니다.
아래는 예시 이메일 헤더입니다:
각 요소에 대한 상세 설명 및 분석
From
- 설명: 발신자의 이메일 주소입니다. 예를 들어, "sender@example.com"입니다.
- 분석 방법: 발신자가 실제로 존재하는지, 도메인이 정상적인지 확인합니다. 발신자가 의심스러울 경우 스팸일 가능성이 높습니다.
To
- 설명: 수신자의 이메일 주소입니다. 예를 들어, "recipient@domain.com"입니다.
- 분석 방법: 본인의 이메일 주소인지 확인합니다. 수신자가 여러 명일 경우 스팸일 가능성이 있습니다.
Subject
- 설명: 이메일의 제목입니다. 예를 들어, "Example Email"입니다.
- 분석 방법: 제목이 의심스러운 경우, 클릭을 유도하는 문구인지 확인합니다. "긴급", "당첨" 등의 문구는 스팸일 가능성이 높습니다.
Date
- 설명: 이메일이 발송된 날짜와 시간입니다. 예를 들어, "Mon, 10 Jan 2024 10:00:00 +0000 (UTC)"입니다.
- 분석 방법: 날짜와 시간이 정확한지, 발신자와 수신자의 시간대가 일치하는지 확인합니다. 불일치할 경우 의심할 수 있습니다.
Return-Path
- 설명: 반송 이메일 주소입니다. 이메일이 반송될 경우 이 주소로 돌아갑니다.
- 분석 방법: 발신자의 이메일 주소와 일치하는지 확인합니다. 일치하지 않을 경우 스팸일 가능성이 있습니다.
Received
- 설명: 이메일이 거친 서버 정보를 나타냅니다. 이메일의 경로를 추적할 수 있습니다.
- 분석 방법: 각 서버의 IP 주소와 도메인을 확인하여 정상적인 서버인지 확인합니다. 의심스러운 서버가 있을 경우 스팸일 가능성이 있습니다.
Message-ID
- 설명: 이메일 고유 식별자입니다. 예를 들어, "1234567890@example.com"입니다.
- 분석 방법: 각 이메일마다 고유해야 하며, 이를 통해 이메일을 추적할 수 있습니다. 중복되거나 이상한 형식일 경우 의심할 수 있습니다.
MIME-Version
- 설명: 이메일의 MIME 버전 정보입니다. 예를 들어, "1.0"입니다.
- 분석 방법: 일반적으로 "1.0"이 사용되며, 다른 버전이 있을 경우 의심할 수 있습니다.
Content-Type
- 설명: 이메일 내용의 형식입니다. 예를 들어, "text/plain; charset=UTF-8"입니다.
- 분석 방법: 이메일의 내용이 텍스트인지, HTML인지 확인합니다. 스팸 메일은 종종 HTML을 사용하여 숨겨진 링크를 포함시킵니다.
User-Agent
- 설명: 이메일 클라이언트 정보입니다.
- 분석 방법: 발신자가 사용한 클라이언트를 확인할 수 있습니다. 이상한 클라이언트가 사용된 경우 의심할 수 있습니다.
헤더를 통해 이메일의 발신 경로 추적하기
Received 필드를 이용한 경로 추적 (이 부분이 혼동하기 쉽습니다.)
- 설명: Received 필드는 이메일이 어떤 경로를 거쳤는지 보여줍니다.
- 분석 방법: Received 필드를 역순으로 따라가며 이메일의 경로를 추적합니다. 각 서버의 IP 주소와 도메인을 확인하여 정상적인 서버인지 확인합니다.
위 예시에서 이메일은 mail.example.com 서버를 거쳐 recipient.domain.com 서버로 전달되었습니다. 각 서버의 IP 주소와 도메인이 정상적인지 확인하여 스팸 여부를 판단합니다.
4. 이메일의 전송 과정
이메일이 작성된 후 발송되는 과정: 이메일 작성 후 발송 버튼을 누르면 SMTP 서버로 전송됩니다.
SMTP 서버를 거치는 과정: 이메일은 여러 SMTP 서버를 거쳐 수신자의 메일 서버로 전달됩니다.
각 서버에서의 처리 과정 및 헤더 정보 추가: 각 서버는 이메일에 Received 필드를 추가하며, 이를 통해 경로를 추적할 수 있습니다.
수신자의 메일 서버로 도달하는 과정: 최종적으로 수신자의 메일 서버에 도달하여 수신자의 메일함에 저장됩니다.
5. Microsoft Outlook에서 이메일 헤더 보는 방법
- Microsoft Outlook 열기: Outlook을 실행하고 분석하려는 이메일을 선택합니다.
- 메시지 옵션 열기: 선택한 이메일을 오른쪽 클릭하고 '메시지 옵션'을 클릭합니다. 또는 상단 메뉴에서 '파일'을 클릭한 후 '속성'을 선택합니다.
- 인터넷 헤더 확인: '인터넷 헤더' 또는 '메시지 헤더'라는 섹션이 나타납니다. 여기에서 이메일의 전체 헤더를 확인할 수 있습니다.
이 글은 저 스스로도 중간중간 참고하기 위해 적습니다! 메일 헤더를 가끔 뜯어보고 싶으신 분들은 참고하셔도 좋을 것 같아요!
감사합니다. :)