Protection Against Spam Using Pre-Challenges

34
SEC 2005 SEC 2005 Protection Against Protection Against Spam Spam Using Using Pre Pre - - Challenges Challenges June 1, 2005 Protection Against Spam Using Protection Against Spam Using Pre Pre - - Challenges Challenges Rodrigo Roman, Jianying Zhou, Javier Lopez

Transcript of Protection Against Spam Using Pre-Challenges

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

June 1, 2005

Protection Against Spam Using Protection Against Spam Using PrePre--ChallengesChallengesRodrigo Roman, Jianying Zhou, Javier Lopez

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Table Of ContentsTable Of Contents

• Spam• Anti-Spam schemes• Pre-Challenge Scheme• Discussions• Conclusions

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

SpamSpam

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Spam Spam -- What is Spam?What is Spam?

E-Mail Spam = Junk Mail = Unsolicited Commercial E-mail (UCE)• Nigerian “419” Scam, Pyramid Schemes, Sexual “improvements”,...

Why Spam happens?• E-Mail infrastructure is vulnerable!• Based on a protocol made in 1982 (SMTP), with minor revisions

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

SMTP:

MTA = Mail serverE-mail = Σ ( source address, destination address, body, headers)• …there is no authentication! Everything can be forged.• Spammer can control an user machine and/or a Client MTA

Spam Spam -- SMTP FlawsSMTP Flaws

[email protected] [email protected]

CLIENTMTA

SERVERMTA

Yahoo.com Hotmail.com

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Spam Spam -- EconomyEconomy

Is it profitable?• It’s easy to send spam to millions of recipients

• Just need to know how to reach them! (addresses)• Web agents that analyse Web Sites, side attacks over SMTP…

• Equipment? It’s almost free!• Software: a Mass Mailing program• Hardware:

• Spammer using own servers (one or more machine(s) +Internet line). Need anonymizer (proxy)

• Spammer controlling another MTA (e.g. relay server)

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

AntiAnti--Spam SchemesSpam Schemes

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Actual SchemesActual Schemes

Purpose• Avoiding Spam while maintaining actual SMTP protocol and E-mail

infrastructure

Tools that can be used against spam• “Homebrew” solutions (John NOSPAM Doe AT yahoo DOT com)• “Received” headers• Destination address• Email Content• Others: Micropayments, Challenge-Response

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

“Received” headers• They indicate the path of the email through Internet• Malicious Client MTAs can be detected (“blacklisting”)• Problem: Individual spammers, banning “innocent” users/domains

Destination address• A policy or password can be encoded in the address of the receiver• Contains temporal policies (can be used until X), valid senders,...• Problem: Scheme oriented for computers, not for humans

Actual SchemesActual Schemes

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Email contents - filtering• Content can be analyzed using AI or statistical techniques• Try to distinguish whether an email is spam or not• Problem: Can lead to false positives and false negatives

Micropayment• Client MTA must compute a function before sending any message• Prevents evil MTAs from sending millions of emails• Problems: Client devices with weak capability, reduce MTAs

performance

Actual SchemesActual Schemes

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Challenge - Response• When receiving email from unknown user: send him/her a

challenge• Challenge can be simple (reply) or complicated (hard-AI problem)• When correct response is received, emails of that user are allowed

to enter• Hybrid Solutions: Microsoft “Penny Black” Project (micropayments)• Problem: Mailing lists, delay of service, possible DDoS

Evolution → Pre-Challenge Scheme

Actual SchemesActual Schemes

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

PrePre--ChallengeChallengeSchemeScheme

3+4?

7

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

PrePre--Challenge Challenge -- CoreCore

• MAIN IDEA: Sender must retrieve receiver’s email from somewhere. So... Also challenge (simultaneously)

• Sender solves challenge, send email. If correct, will be accepted• Why? Check whether there is a machine behind sender’s computer

(Mass mailing programs)

[email protected]@hotmail.com

[email protected] = 3 + 4Tel: 999-12345

[email protected] = 3 + 4Tel: 999-123457

7

OK!

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Who defines the challenge?• Every human user defines his/her own challenge

(“What is the name of my dog” in a website about my dog)

Where is the challenge stored?• Next to its user’s email address• In a website, in a business card,…

How is the challenge?• Range from a single word or mathematical operation to a hard-AI

problem

PrePre--Challenge Challenge -- ChallengeChallenge

[email protected] = 3 + 4Tel: 999-12345

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

PrePre--Challenge Challenge -- How it WorksHow it Works

Data Structures• Contains e-mail addresses of users

White-List (safe-list)• Users already accepted - no challenge testsReply-List• Users which the local user sent e-mail, and did not reply yetWarning-List• Users that had been warned about how is the actual challenge

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

PrePre--Challenge Challenge -- How it WorksHow it Works

Security Levels• High Security: Reply-List is queried searching for a <user,domain>

match• Low Security: Reply-List is queried searching for a <*,domain>

match

[email protected]

HighSecurity

[email protected]

LowSecurity

hotmail.com

1) To [email protected]

2) From [email protected]

1) To [email protected]

2) From *@hotmail.com

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Architecture - Meet the Actors

• Alice: User that uses the pre-challenge scheme

• Bob: User that does not use the Pre-Challenge scheme

This is done for simplifying the explanation, both users can use the scheme simultaneously without problems

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE BOB

I use the Pre-Challenge

schemeI don’t

[email protected] [email protected]

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(1)• When A sends an e-mail to

B, B’s e-mail address is added to reply-list if not in white-list

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE [email protected] [email protected]

[email protected]

Reply-List ALICEWhite-List

ALICE

[email protected]

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(1’)• When B sends an e-mail to

A, A checks if B’s address is in white-list. If yes, mail reaches A’s mailbox

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE [email protected] [email protected]

Inside white-list...

B A

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(2’)• If B is listed in the reply-list,

the mail reaches A's mailbox and B is added to the white-list.

• In case of using a high security level, B is erased from the reply-list because A received the reply expected from B

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE [email protected] [email protected]

Inside reply-list...

B A

[email protected]

White-List ALICE

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(3’)• If B is not listed in any list,

the system checks whether the challenge of the email has been solved. If it is solved, the mail reaches A's mailbox and B is added to the white-list.

• Additionally, B receives a confirmation email.

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE [email protected] [email protected]

Challenge OK

B A

[email protected]

White-List ALICE

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(4’)• If it is not solved but the

message has a solution to an old challenge, the system checks if B is listed in the warning-list. If that is the case, the mail is discarded.

• Otherwise, B's address is added to the warning-listand B gets a reply containing information about the new challenge.

PrePre--Challenge Challenge -- How it WorksHow it Works

A

ALICE [email protected] [email protected]

Challenge OLD

New Challenge [email protected]

Warning-List ALICE

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

(5’)• If it is not solved and has no

solution, the email is discarded without any reply to B indicating this fact

PrePre--Challenge Challenge -- How it WorksHow it Works

ALICE [email protected] [email protected]

Nothing...

B

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

PrePre--Challenge Challenge -- Spam ScenariosSpam Scenarios

First Scenario: Spammer harvest email, not pre-challenge• Spam cannot achieve recipient’s email - discarded without notice

Second Scenario: Spammer harvest email and pre-challenge• Spammer must solve the challenge. In normal situations, only a

human mind can do this.• Spammer can achieve a single mailbox… but for being profitable

he/she must achieve millions of mailboxes!• Spammer can interchange challenge solutions (CDs!), or hire

cheap labor - costly!• Users can change their challenge anytime - trashes inversion

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

DiscussionsDiscussions

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- Mailing ListsMailing Lists

Problems• Subscribing a mailing list means solving challenges managed by

machines. Process not standard.

And Solutions• We use Low security until ending the subscription

[email protected] list.com Other subscribed users

1) subscribe to [email protected]

2) negotiate with [email protected]

3) M From *@user.com4) M From [email protected]

5) Finally, have [email protected] in white-list

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- AvailabilityAvailability

Where the challenge is available? (next to the user email address)• If not stored along with the e-mail address (e.g. URI pointing to the

challenge), or in static place (e.g. business card), problems!• Maybe the challenge is

• Not accessible• Outdated

• Recommendation: Store challenge and pointer (e.g. URI) to the actual challenge in the same place

• Thanks to the Warning-List feature, there is no problems• Unsolved problem: challenge can be impossible to solve for a

disabled user without help

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- AccesibilityAccesibility

Problem• Pre-Challenge trashes “wrong” e-mails without notice. People may

think that the receiver got his/her e-mail and ignored it!• More a social problem than a design problem• Solution? : Use SMTP mechanisms for notifying failures

[email protected]

1) Send email, ERROR

2) Sender creates error email

MTA lvl 1yahoo.com

Error in 1) due to “No answer to pre-challenge”

Hmmm… I received an error…

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- Error MessagesError Messages

Problem• An email delivery can fail: “Invalid recipient”, “Mailbox full”, “Invalid

Pre-Challenge” ⇒ sender creates an error message• Error message created by computer! No pre-challenge, email

trashed in some cases!

[email protected]

1) Send email, OK

4) Send error email, ERROR

Error in 4) due to “No answer to pre-challenge”

2) Send email, ERROR

3) MTA lvl 1 creates error email

MTA lvl 1hotmail.com

MTA lvl 2hotmail.com

Error in 2) due to “Mailbox full”

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- Error MessagesError Messages

Solution• Error messages can be detected, and have attached the mail that

caused the error: includes recipient address and ID of the email• Query the reply-list when error received - use address and ID

(the error message is the “reply” to a email we sent).

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Discussions Discussions -- New ApplicationsNew Applications

Pre-Challenge can be used for other purposes!• Example: IM Systems (MSN, AOL Messenger, ICQ, …)• Some features are prone to receive spam! (ICQ World-Wide Pager,

Shoutboxes)• Use Pre-Challenge scheme for avoiding machine-based Spam

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

ConclusionsConclusions

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

ConclusionsConclusions

Benefits• Standalone solution (no need to change other side)• Does not create inconvenience to normal users• Manages mailing list messages and error messages• There is no delay on receiving e-mails• There is no possibility of a DDoS• Avoids email harvesting problems• Also can be applied for other services!

Reaches a good balance between security against spam and convenience to normal users

SEC 2005 SEC 2005 Protection AgainstProtection Against SpamSpam UsingUsing PrePre--ChallengesChallenges

Thanks for your Thanks for your attentionattention