procmail 을 이용한 아웃룩 사칭 메일 필터링 기법 3개

관련된 문서, 자유 강좌, 관련 정보와 새소식
Post Reply
ironiris
expert
expert
Posts: 728
Joined: 2004/04/08 08:58

procmail 을 이용한 아웃룩 사칭 메일 필터링 기법 3개

Post by ironiris » 2009/01/29 11:27

이번엔 아웃룩(익스프레스)에서 발송되지 않았지만 아웃룩(익스프레스)에서 발송된 것처럼 헤더를 조작해서 메일 필터링 도구를 교란하려는 스팸메일에 대응하는 코드입니다.
유형으로 3가지를 적었는데
첫번째는 아웃룩(익스프레스)으로 보낸 메일의 Message-ID의 경우는 $가 들어가지 않습니다.
제가 알기로 규약상 Message-ID헤더는 email 주소에서 사용할수 있는 문자와 형태로 구성되어야한다고 알고 있는데 이메일주소의 ID부분은 [-_0-9a-zA-Z\.]+ 만 사용가능한 것으로 알고 있습니다.
그리고 여러 버전의 아웃룩(익스프레스)를 이용해서 상당히 많이 발송해보고 모니터링해본 결과 $ 문자는 Message-ID에서 사용되지 않는다고 판단해서 아래 코드를 만들었습니다. 주로 영문 메일이 많이 걸립니다.
--- 나중에 추가합니다. 첫번째 코드는 사용하지 마세요. 아웃룩2007에서 $ 들어갑니다. ---

Code: Select all

:0 EHB
* ^X-Mailer.*Outlook
* ^Message-ID.*[$]
{
    LOG = "[아웃룩사칭] "
:0fhw
|formail -i "Subject: [SPAM] $SUB"
}
두번째는 아웃룩(익스프레스)로 발송했는데 메일 본문에 text/plain 이 없는 경우입니다.
text/html 가 없는 메일은 봤어도 text/plain 은 text/html 이 존재하더라도 항상 존재합니다.

Code: Select all

:0 EHB
* ^X-Mailer.*Outlook
* !^Content-Type: *text/plain
* !charset
{
    LOG = "[아웃룩사칭] "
:0fhw
|formail -i "Subject: [SPAM] $SUB"
}
세번째는 아래 코드인데.. 요즘은 별로 적용되는 상황은 없습니다만.. 예전엔 분명히 저런 스팸메일이 있었던지라.. 같이 포함시켰습니다.
아웃룩(익스프레스)에서 메일의 우선순위를 표현하는 헤더가 있는데
X-Mailer 헤더가 없는 경우도 있습니다. 아웃룩(익스프레스)가 아니면서 X-MSMail-Priority 헤더가 포함되는 경우는 없다고 보고 세번째로 추가시켰습니다.

Code: Select all

* ^X-MSMail-Priority
* !^X-Mailer: Microsoft
* !^X-MimeOLE:
{
    LOG = "[아웃룩사칭] "
:0fhw
|formail -i "Subject: [SPAM] $SUB"
} 

ironiris
expert
expert
Posts: 728
Joined: 2004/04/08 08:58

Post by ironiris » 2009/02/06 10:22

하나 더 추가합니다.
아래 코드는 아웃룩(익스프레스)에서 메일을 보내는데 메일서버에 접근해서 처음 인사를 할때 HELO localhost 라고 하는 경우는 없습니다.
사용자 컴퓨터 이름을(아웃룩(익스프레스)이 설치된 윈도우계열 컴퓨터의 이름을) localhost 라고 적는 분이 설마 계실까.. 하고 생각합니다. ^^;
이 코드의 문제점은 스팸필터링툴이 중간에 가로채 메일서버에 localhost 라고 알려주는 경우인데 이때는 localhost 라고 달랑 알려주지 않고 HELO localhost.localdomain 이라고 접근을 합니다.
스팸필터링이 안된 메일 772통중 74개의 메일이 여기에 해당되었습니다.

Code: Select all

:0 EHB
* ^X-Mailer.*Outlook
* ^Received: from unknown \(HELO localhost\)
{
    LOG = "[아웃룩사칭] "
#    SUB = "[OutlookFAKE] $SUB"
:0fhw
|formail -i "Subject: [SPAM] $SUB"
}

ironiris
expert
expert
Posts: 728
Joined: 2004/04/08 08:58

Post by ironiris » 2009/04/16 16:05

하나 더 추가합니다.
아웃룩 익스프레스에서 스팸메일이 올때 utf-7 로 인코딩해서 오는 메일이 있는데
한글이더군요. 그런데 아웃룩, 아웃룩 익스프레스의 옵션을 아무리 찾아봐도
utf-7인코딩 설정은 없습니다. 그래서 추가

Code: Select all

:0 EHB
* ^X-Mailer.*Outlook
* charset=.utf.7
{
    LOG = "[아웃룩사칭] "
#    SUB = "[OutlookFAKE] $SUB"
:0fhw
|formail -i "Subject: [oSPAM] $SUB"
}

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests