client puzzles a cryptographic defense against connection depletion attacks most of slides come from...

33
Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Upload: stacey-parfitt

Post on 30-Mar-2015

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Client PuzzlesA Cryptographic Defense Against Connection

Depletion Attacks

Most of slides come fromAri Juels and John Brainard

RSA Laboratories

Page 2: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

The Problem

Page 3: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

How to take down a restaurant

Saboteur

Restauranteur

Page 4: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Saboteur vs. Restauranteur

Saboteur

Restauranteur

Table for fourat 8 o’clock. Name of Mr. Smith.

O.K.,Mr. Smith

Page 5: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Saboteur

Restauranteur

No More Tables!

Page 6: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

An example: TCP SYN flooding

“TCP connection, please.”

“O.K. Please send ack.”

“TCP connection, please.”

“O.K. Please send ack.”

Buffer

Page 7: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

TCP SYN flooding has been deployed in

the real world– Panix, mid-Sept. 1996– New York Times, late Sept. 1996– Others

Similar attacks may be mounted against e-mail, SSL, etc.

Page 8: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Some defenses against connection depletion

Page 9: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Throw away requests

Buffer

Server

Problem: Legitimate clients must keep retrying

Client

“Hello?”

“Hello?”

“Hello?”

Page 10: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Request

IP Tracing (or Syncookies)

Buffer

Server

•Can be evaded, particularly on, e.g., Ethernet•Does not allow for proxies, anonymity

Problems:

Client

Hi. My name is 10.100.16.126.

Page 11: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Digital signatures

Buffer

Server

•Requires carefully regulated PKI•Does not allow for anonymity

Problems:

Client

Page 12: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Connection timeout

Problem: Hard to achieve balance between security and latency demands

Server

Client

Page 13: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Our solution: client puzzles

Page 14: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Intuition

Restauranteur

Table for fourat 8 o’clock. Name of Mr. Smith.

Please solve thispuzzle.O.K.,

Mr. SmithO.K.

???

Page 15: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

A puzzle takes an hour to solve There are 40 tables in restaurant Reserve at most one day in advance

Intuition

A legitimate patron can easily reserve a table

Suppose:

Page 16: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Intuition

???

??????

???

???

???

Would-be saboteur has too many puzzles to solve

Page 17: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

The client puzzle protocol

Buffer

ServerClientService request M

O.K.

Page 18: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

What does a puzzle look like?

Page 19: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

hash

image Y

Puzzle basis: partial hash inversion

pre-image X160 bits

?

Pair (X’, Y) is k-bit-hard puzzle

partial-image X’ ?k bits

Page 20: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Puzzle basis: (Cont’d)

Only way to solve puzzle (X’,Y) is brute force method. (hash function is not invertible)

Expected number of steps (hash) to solve puzzle: 2k / 2 = 2k-1

Page 21: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Puzzle construction

Client

Service request M

Server

Secret S

Page 22: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Puzzle constructionServer computes:

secret S time T request M

hash

pre-image X

hash

image Y

Puzzle

Page 23: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Sub-puzzle

Construct a puzzle consists of m k-bit-hard sub-puzzles.

Increase the difficulty of guessing attacks. Expected number of steps to solve: m×2k-1.

S T M

1 hash

X[1]

hash

Y[1]

2 hash

X[2]

hash

Y[2]

m hash

X[m]

hash

Y[m]

Page 24: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Why not use k+logm bit puzzles?

(k+logm)-bit puzzle– Expected number of trials m×2k-1

But for random guessing attacks, the successful probability– One (k+logm)-bit puzzle

2-(k+logm) (e.g., 2-(k+3))

– m k-bit subpuzzles (2-k)m = 2-km (e.g., 2-8k)

Page 25: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Puzzle properties

Puzzles are stateless Puzzles are easy to verify Hardness of puzzles can be carefully

controlled Puzzles use standard cryptographic

primitives

Page 26: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Client puzzle protocol (normal)

Mi1 : first message of ith execution of protocol M

Page 27: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Client puzzle protocol (under attack)

P: puzzle with m sub-puzzlest: timestamp of puzzleτ: time to receive solutionT1: valid time of puzzle

Page 28: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Where to use client puzzles?

Page 29: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Some pros

Avoids many flaws in other solutions, e.g.:

Allows for anonymous connections Does not require PKI Does not require retries -- even under heavy attack

Page 30: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Practical application Can use client-puzzles without special-purpose software

– Key idea: Applet carries puzzle + puzzle-solving code

Where can we apply this?– SSL (Secure Sockets Layer)– Web-based password authentication

Page 31: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Conclusions

Page 32: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Puzzle and protocol description Rigorous mathematical treatment of security using puzzles --

probabilistic/guessing attack

Contributions of paper Introduces idea of client puzzles for on-

the-fly resource access control

Page 33: Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories

Questions?