최근에 접수된 얄미운 스팸에 대해서 공유합니다.

아래의 내용이 접수된 스팸의 샘플입니다.

자신이 자신에게 보낸 메시지 형태를 띄고, 내용과 제목은 아래와 같습니다.

제목은 늘 RE: 을 붙여서, 마치 이 메시지가 주고 받았던 것처럼 속이고, 제목도 아주 그럴 듯 하게 근사합니다. 제목만으로는 스팸으로 간주하기 정말 어려운 메시지입니다.

Body의 내용도 마찬가지 입니다. 내용 필터하기 어려운 글자들로만 포진해 있습니다. 요상하다 싶은 내용들은 이미지 처리를 해 버렸네요. 서명까지 근사합니다. 서명 안에 있는 URL 이나 주소들도 모두 random 하게 자동 생성되어서 인지, 같은 스팸도 모두 다른 URL과 주소를 담고 있습니다. ^^;;;

1. 샘플 스팸 메시지

clip_image002

clip_image004

2. 메시지 헤더 내용

Received: from afp-transformers.com (93.177.142.211) by mail.domain.com

(172.28.0.21) with Microsoft SMTP Server id 8.0.783.2; Tue, 20 Jan 2009

20:42:37 +0900 <- Sender IP나 FQDN 이 매번 번경됨

To: <user@domain.com> <- 송신자가 수신자 자신임 (self recipient sender)

Subject: Next: Getting the best results

From: user@domain.com

MIME-Version: 1.0

Importance: High

Content-Type: text/html

Message-ID: <1ab64fcb-e35a-404f-97fb-c8d46fa2843f> <- Message Generation 서버 없음

Return-Path: user@domain.com

Date: Tue, 20 Jan 2009 20:42:37 +0900

X-MS-Exchange-Organization-PRD: domain.com

X-MS-Exchange-Organization-SenderIdResult: PermError

Received-SPF: PermError (server.domain.com: domain of user@domain.com

used an invalid SPF mechanism) <- Sender ID에서 PermError 는 메시지 삭제나 거부가 되지 않음

X-MS-Exchange-Organization-SCL: 3 <- 본문 내용으로는 스팸으로 간주되지 어려운 수치임

X-MS-Exchange-Organization-PCL: 2

X-MS-Exchange-Organization-Antispam-Report:

DV:3.3.7319.660;SV:3.3.7305.1065;SID:SenderIDStatus PermError

3. Sender ID 의 입장에서 해당 메시지를 filter 할 수 없는 이유

(1) Exchange 2007 Help의 Status 상태 내용

Output

Description

Status

Status returns one of the following: Pass, Neutral, SoftFail, Fail, None, or TempError.

  • Pass    The IP Address and Purported Responsible Domain pair passed the Sender ID verification check. Neutral   The Sender ID verification check was inconclusive.
  • Softfail   The IP Address may not be in the sender policy framework (SPF). Softfail is considered less trusted than Neutral.
  • Fail   The IP address is specifically not listed in the SPF. A FailReason status code will be specified. See the FailReason section.
  • None   No published sender policy framework (SPF) data exists in the sender's Domain Name System (DNS).
  • TempError   A temporary DNS failure occurred.
  • PermError   The DNS record is invalid.

(2) Sender ID 에 처리에 대한 RFC 규약의 내용

RFC 4406            Sender ID: Authenticating E-Mail         

5.1.  Neutral, None, SoftFail, or PermError

   An SMTP server receiving one of these results SHOULD NOT reject the

   message for this reason alone, but MAY subject the message to

   heightened scrutiny by other measures, and MAY reject the message as

   a result of this heightened scrutiny.

   Such additional security measures MAY take into account that a

   message for which the result is "SoftFail" is less likely to be

   authentic than a message for which the result is "Neutral".

5.2.  Pass

   An SMTP server receiving this result SHOULD treat the message as

   authentic.  It may accept or reject the message depending on other

   policies.

5.3.  Fail

   When performing the Sender ID test during an SMTP transaction, an MTA

   that chooses to reject a message receiving this result SHOULD reject

   the message with a "550 5.7.1 Sender ID (xxx) yyy - zzz" SMTP error,

   where "xxx" is replaced with "PRA" or "MAIL FROM", "yyy" is replaced

   with the additional reason returned by the check_host() function, and

   "zzz" is replaced with the explanation string returned by the

   check_host() function.

   When performing the Sender ID test after accepting an e-mail message

   for delivery, an MTA that chooses to reject a message receiving this

   result SHOULD NOT deliver the message.  Instead, it should create a

   DSN message, consistent with the usual rules for DSN messages.

5.4.  TempError

   An SMTP server receiving this result MAY reject the message with a

   "450 4.4.3 Sender ID check is temporarily unavailable" error code.

   Alternatively, an SMTP server receiving this result MAY accept a

   message and optionally subject it to heightened scrutiny by other

   anti-spam measures.

(3) Exchange 에서 Status 에 따른 처리 방법

ð 위의 RFC 규약에 따라 동작합니다.

Sender ID check result

Description

Sender ID Actions in E2K3 SP2

Neutral (?)

Domain makes no assertion about the IP address

Stamp and Continue

Pass (+)

Client is authorized to send mail on behalf of the domain from a matching IP address

Stamp and Continue

Fail (-)

- Sender Domain Does not Exist

- Sender is not permitted

- Malformed domain

- No PRA found in the header

Client is explicitly NOT authorized to send mail on behalf of the domain from a matching IP address

Stamp and Continue

-or-

Reject

-or-

Delete

Soft Fail (~)

Client might not be authorized to send mail on behalf of the domain from a matching IP address

Stamp and Continue

None

No Sender ID records are published for this domain

Stamp and Continue

TempError

Receiving server encountered a transient error when performing the check

Stamp and Continue

PermError

The domain’s published records couldn’t be correctly interpreted

Stamp and Continue

ð 따라서 PermError 를 가진 메시지를 삭제하도록 할 수 없는 것이 확인 됩니다.

(4) 고객 Spam 메시지의 내용

ð 수신자가 발송자 인 것으로 가장되어 있음.

ð 메시지 제목에 RE 를 많이 붙여 사용함. 제목에는 스팸관련 내용 없음.

ð 본문 내용이 콘텐츠 필터에 걸리는 것을 막기 위해 이미지 처리함.

ð White word 로 사용될 만한 내용을 copy right 부분에 넣음.

ð URL 이나 숫자들은 모두 random 하게 생성됨

4. 해당 스팸을 막을 수 있는 방법

1. Content Filtering

è 다소 무식(?)해 보이지만,스팸메시지에서 내용을 filter 할 만한 내용은 BRANDKEYWORD 로 보이네요. 각개 전투로 내용으로 filter 할 수 있어 보입니다.

clip_image006

관련 서비스 재시작 후 아래와 같이 Content Filtering 에 의해서 SMTP 레벨에서 메시지가 거부됩니다.

clip_image007

2. 해당 도메인을 가장해서 들어오지 못하도록 고객사의 accepted domain (authoritative domain) 에 대한 익명연결에 대해서 “Accept Authoritative Domain Sender” 권한을 거부합니다.

(1) ADSI 사용 시

clip_image009

(2) 명령 사용 시

[PS] >Add-ADPermission "Default Receive Connector" -deny:$True -user "nt authority\anonymous logon" -ExtendedRights "Ms-Exch-sMTP-Accept-Authoritative-domain-Sender"

Identity User Deny Inherited Rights

-------- ---- ---- --------- ------

Server\Def... NT AUTHORITY\ANON... True False ms-Exch-SMTP-Accep...

(3) 설정 확인 시

[PS] >C:\Documents and Settings\Administrator>get-ADPermission "Default Receive Connector" -user "nt authority\anonymous logon" | ft -wrap

(4) 서비스 재시작

설정이 바로 적용되지 않아 바로 적용 시 관련 서비스 재시작이 필요하네요.

“Microsoft Exchange Transport” 서비스 재시작

(5) 역시 SMTP 레벨에서 mail from 에서 local 도메인 주소로 발송 시도시 바로 거부됩니다.

written by kyunghl