베지밀

[악성코드분석] 이메일 헤더 필드 분석 본문

교육, 프로젝트/시큐리티 아카데미 4기

[악성코드분석] 이메일 헤더 필드 분석

vegimil 2024. 8. 6. 17:55

이메일 헤더란?

메일 발송자의 위치부터 시작하여 각 서버를 거쳐 최종적으로 수신자에게 오는 과정을 기록

악성코드 분석가는 해커가 발송한 메일을 역추적하기 위해 이메일 헤더의 여러 필드들을 반드시 확인해야 함

 

이메일 헤더 필드

  • To : 수신인, 받는 사람
  • Cc(Carbon Copy) : 다른 사람이 메시지를 참조해서 읽으라고 보내는 경우
  • Bcc(Blind Carbon Copy) : 숨은 참조로 여러 사람에게 보낼 때 참조인 주소를 숨기기 위해 사용
  • From : 보내는 사람. 임의의 주소를 적으면 되기 때문에 해커는 자신의 주소가 아닌 가짜 주소 입력
  • Reply-To : 수신한 메일을 회신할 때, 우선적으로 Reply-To에 설정된 주소로 회신
  • Received : 수신한 메일이 어느 서버들을 거쳐왔는지 표시
    • 헤어 부분의 하단에서 거꾸로 역추적해야 함.
    • 발신지 서버 by 수신지 서버 with 메일 프로토콜 id 문자열 for 수신자 메일 주소
  • Message-ID : 메일 서버에서 메시지를 외부로 보낼 때 붙이는 고유 일련번호
  • Date : 실제 메일을 보낸 날짜
  • Return-Path : 메일 전송 실패 시 반송되는 주소. 주로 송신자의 메일 주소 입력
  • 'X-' 헤더 : MIME 규칙을 따르지 않은 비표준 헤더. 임의로 붙여지는 헤더
    • 실제 발송 IP, 계정, 응용프로그램 명 등 중요한 단서 포함
  • Content-Type : 메일 본문이 어떤 형식인지 (일반 문자열, html 등)

 

 


 

 

네이버 eml파일 실습 (가상환경입니다)

 

Thunderbird에 [네이버].eml 파일을 올려보자

평범한 메일처럼 보이지만 초록 버튼에 커서를 올리면

아래쪽에 up으로 시작하는 url로 이동하는 것을 볼 수 있다.

그러나 마우스에는 naver인 척 위장중이다.

 

클릭해서 들어가보면

이렇게 뜬다.

idnaver.com을 평판 조회 사이트에 올려보자.

피싱사이트라고 한다.

 

 

메모장에서 메일 헤더 역시 체크해보자.

Received가 6개정도 나오는데, 중간 Received는 경유지이고, 마지막 Received가 발신지라고 확인하면 됨

여기서는 upsrv.~~  하는 서버로 되어있다.

upsrv.16mb.com는 Malilcious라고 뜬다.

 

From과 같은 주소이므로 해당 주소가 공격자의 주소임을 확신할 수 있다.

 

From은 조작 가능하지만, 이메일 헤더의 Return-Path는 신뢰할 수 있다.

 

공격자의 IP

 

캐나다에 있는 IP이므로 스팸 메일이라고 생각할 수 있다.