'Joe Job'에 해당되는 글 1건

  1. 2007/08/22 이메일과 스팸메일에 관한 오해 1 (1)

수신자가 내가 아닌 스팸메일을 받은 경우

이메일을 사용하다보면, 가끔 수신자가 내가 아닌데도 나에게 메일이 배달된 경우가 종종 있다. 이런 경우를 보고 누군가가

"숨은 참조(BCC)에 당신이 들어가 있어서 수신자에는 보이지 않지만 배달된 것이다"

라고 말하는 것을 들은 적이 있다.

물론 그럴 수도 있겠지만 그게 화면에 표시가 되지 않는다는 것은 참으로 웃기는 일이다. 사실 이 경우에는 숨은참조때문이 아니라 SMTP 프로토콜의 구조적인 결함으로인해 스패머들이 장난을 치는 것이다.

이메일을 Unix/Linux 나 Windows 의 command 창(Dos창)에서 보낸다면 아래와 같은 과정을 거쳐야 한다. (사실 우리가 사용하는 웹메일이나 outlook express 와 같은 프로그램들도 내부적으로는 이러한 명령을 사용하여 메일을 보내고 있다.)

$ telnet your.domain 25 --> 수신서버에 접속하는 명령
Trying 111.222.333.444...
Connected to your.domain.
Escape character is '^]'.
220 your.domain ESMTP --> 수신서버에서 수신할 준비가 완료 되었다는 대답
EHLO --> 수신서버와 통신의 시작을 알리고 동시에 정보를 교환하는 명령
250-your.domain
250-PIPELINING
250-8BITMIME
250-SIZE 0
250 AUTH LOGIN PLAIN CRAM-MD5 --> 수신서버에서 보내온 갖가지 정보들
MAIL FROM:<nobody@some.where> --> 실제 발신 주소
250 ok
RCPT TO:<nobody
@your.domain> --> 실제 수신 주소
250 ok
DATA --> 본문(Body)의 시작을 알림
354 go ahead --> 이 줄 아래로 공백라인까지가 메세지의 헤더부분
From:webmaster@naver.com --> 메세지 헤더의 From 부분 (여기서 사기를 치는 거지^^)
To:test@google.com --> 메세지 헤더의 To 부분 (역시 여기도 사기치는 곳^^)
Subject:Viagra gogo --> 메세지의 제목
--> 이 공백은 헤더와 컨텐츠의 구분
hahahaha
This is spam
.
--> 마침표로 본문(Body)의 끝을 알림
250 ok 1187703580 qp 21365 --> 잘 수신되었다는 표시
QUIT --> 접속종료 명령

이와 같이 SMTP 프로토콜은 실제로 메일이 송/수신이 되는 Network layer 에서의 Mail From 와 Rcpt To 즉, 송/수신 정보와 실제 우리가 보는 Presentation layer 의 From 과 To 헤더의 송/수신 정보가 각각 다르더라도 아무런 에러없이 전송이 된다. 실제로 전송에 사용되는 것은 당연히 Network layer 의 정보들이지만 우리가 사용하는 MUA(Mail User Agent) 들, 다시말해 Outlook 이나 웹메일 등에서는 헤더의 정보들만 표시하기때문에 생기는 일이다.
첨1) 이러한 수/발신자 정보를 속이는 방법 중 특히 발신자 정보를 속이는 행위를 "Joe Job" 이라고 한다.

그렇다면 "아예 헤더부분을 없애버리고 Network layer 로 통일하거나 두 정보가 다르면 차단해버리면 되지 않냐"고 반문할 수 있겠지. 당연한 생각이다. 하지만 그러기에는 이미 이 SMTP 프로토콜이 국제표준으로 너무나 널리 퍼진 상태인지라 이 모든 것을 뒤집기에는 그 출혈이 너무도 크다하겠다. 그래서 다들 알고도 당하는 거겠지. (이 내용과 관련해서도 수많은 해결책과 이야기들이 많지만 늘 하는 구차한 변명으로^^ 지면 관계상 생략한다.)

이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 왕구라

트랙백 주소 :: http://gooranet.tistory.com/trackback/140

  1. Subject: Viagra 스팸메일 관련.

    Tracked from 마이 블로~그 2008/08/23 21:29  삭제

    스팸메일은 STMP의 헤더 부분을 거짓으로 수정하기 때문에 자신의 이메일 주소가 보낸이로 또는 받는이로 적혀있지 않더라도 해당 메일에 관한 메세지를 받을 수 있게 된다.

댓글을 달아 주세요

  1. BlogIcon 나봉 2008/08/23 21:31  댓글주소  수정/삭제  댓글쓰기

    저도 똑같은 일이 발생해서 도움을 받았습니다.^^
    감사합니다.~