A Cryptographic Defense Against Connection Depletion Attacks

Slides:



Advertisements
Similar presentations
Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Ari Juels and John Brainard RSA Laboratories.
Advertisements

Client Puzzles A Cryptographic Defense Against Connection Depletion Attacks Most of slides come from Ari Juels and John Brainard RSA Laboratories.
CSC 774 Advanced Network Security
CSC 774 Advanced Network Security
TCP Flooding. TCP handshake C S SYN C SYN S, ACK C ACK S Listening Store data Wait Connected.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Kerberized Credential Translation Olga Kornievskaia Peter Honeyman Bill Doster Kevin Coffman Center for Information Technology Integration University of.
Internet Security Protocols
An Introduction to Secure Sockets Layer (SSL). Overview Types of encryption SSL History Design Goals Protocol Problems Competing Technologies.
More on SSL/TLS. Internet security: TLS TLS is one of the more prominent internet security protocols. TLS is one of the more prominent internet security.
Secure communications Week 10 – Lecture 2. To summarise yesterday Security is a system issue Technology and security specialists are part of the system.
Apr 22, 2003Mårten Trolin1 Agenda Course high-lights – Symmetric and asymmetric cryptography – Digital signatures and MACs – Certificates – Protocols Interactive.
SYN Flooding: A Denial of Service Attack Shivani Hashia CS265.
A New Two-Server Approach for Authentication with Short Secrets John Brainard, Ari Juels,Burt Kaliski and Michael Szydlo RSA Laboratories To appear in.
Kill-Bots: Surviving DDoS Attacks That Mimic Legitimate Browsing Srikanth Kandula Dina Katabi, Matthias Jacob, and Arthur Berger.
Security 2 Distributed Systems Lecture# 15. Overview Cryptography Symmetric Assymeteric Digital Signature Secure Digest Functions Authentication.
Game-based Analysis of Denial-of- Service Prevention Protocols Ajay Mahimkar Class Project: CS 395T.
Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.
1 Message Authentication and Hash Functions Authentication Requirements Authentication Functions Message Authentication Codes Hash Functions Security of.
Mitigating DoS Attacks against Broadcast Authentication in Wireless Sensor Networks Peng Ning, An Liu North Carolina State University and Wenliang Du Syracuse.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 21 “Public-Key Cryptography.
.Net Security and Performance -has security slowed down the application By Krishnan Ganesh Madras.
Network Security Continued. Digital Signature You want to sign a document. Three conditions. – 1. The receiver can verify the identity of the sender.
Chapter 21 Public-Key Cryptography and Message Authentication.
All Input is Evil (Part 1) Introduction Will not cover everything Healthy level of paranoia Use my DVD Swap Shop application (week 2)
________________ CS3235, Nov 2002 (Distributed) Denial of Service Relatively new development. –Feb 2000 saw attacks on Yahoo, buy.com, ebay, Amazon, CNN.
New Client Puzzle Outsourcing Techniques for DoS Resistance Brent Waters, Ari Juels, J. Alex Halderman and Edward W. Felten.
New Client Puzzle Outsourcing Techniques for DoS Resistance Brent Waters, Stanford University Ari Juels, RSA Laboratories Alex Halderman, Princeton University.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
Dos and Don’ts of Client Authentication on the Web Kevin Fu, Emil Sit, Kendra Smith, Nick Feamster Presented: Jesus F. Morales.
Denial of Service Attacks and Countermeasures Analysis Dang Nguyen Duc School of Engineering ( )
Using Rhythmic Nonces for Puzzle-Based DoS Resistance Ellick M. Chan, Carl A. Gunter, Sonia Jahid, Evgeni Peryshkin, and Daniel Rebolledo University of.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
Network security Presentation AFZAAL AHMAD ABDUL RAZAQ AHMAD SHAKIR MUHAMMD ADNAN WEB SECURITY, THREADS & SSL.
The Secure Sockets Layer (SSL) Protocol
Outline The basic authentication problem
Cryptography CS 555 Topic 34: SSL/TLS.
IT443 – Network Security Administration Instructor: Bo Sheng
Cryptography Reference: Network Security
Cryptography Reference: Network Security
Cryptographic Hash Function
Outline Basics of network security Definitions Sample attacks
COMP3220 Web Infrastructure COMP6218 Web Architecture
Private Key Algorithms Key Exchange Protocols SSL
Originally by Yu Yang and Lilly Wang Modified by T. A. Yang
Information Security message M one-way hash fingerprint f = H(M)
Security.
Public-Key Cryptography
Cryptographic Hash Functions
0x1A Great Papers in Computer Security
CS/ECE 418 Introduction to Network Security
A Cryptographic Defense Against Connection Depletion Attacks
SSH: SECURE LOGIN CONNECTIONS OVER THE INTERNET
SSL (Secure Socket Layer)
Pre-image Resistance: Given a, hard to find b such that ____
The Secure Sockets Layer (SSL) Protocol
Protocol ap1.0: Alice says “I am Alice”
From Web Security by Lincoln pp – 35-51
Security.
Outline Using cryptography in networks IPSec SSL and TLS.
Lecture 10: Network Security.
Chapter -7 CRYPTOGRAPHIC HASH FUNCTIONS
Lecture 4.1: Hash Functions, and Message Authentication Codes
CS5220 Advanced Topics in Web Programming Secure REST API
CIS 4930/6930 – Privacy-Preserving and Trustworthy Cyber-Systems Dr
Advanced Computer Networks
Electronic Payment Security Technologies
Outline Basics of network security Definitions Sample attacks
CRYPTOGRAPHY & NETWORK SECURITY
Chapter 8 roadmap 8.1 What is network security?
Presentation transcript:

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

The Problem

How to take down a restaurant Restauranteur Saboteur

Saboteur vs. Restauranteur Table for four at 8 o’clock. Name of Mr. Smith. O.K., Mr. Smith Restauranteur Saboteur Saboteur vs. Restauranteur

Restauranteur No More Tables! Saboteur

An example: TCP SYN flooding “TCP connection, please.” “TCP connection, please.” “O.K. Please send ack.” “O.K. Please send ack.” Buffer

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.

Some defenses against connection depletion

Throw away requests Server Client “Hello?” Buffer Problem: Legitimate clients must keep retrying

IP Tracing (or Syncookies) Hi. My name is 10.100.16.126. Buffer Server Client Request Problems: Can be evaded, particularly on, e.g., Ethernet Does not allow for proxies, anonymity

Digital signatures Server Client Buffer Problems: Requires carefully regulated PKI Does not allow for anonymity

Connection timeout Server Client Problem: Hard to achieve balance between security and latency demands

Our solution: client puzzles

Intuition ??? O.K., O.K. Mr. Smith Please solve this Table for four puzzle. Table for four at 8 o’clock. Name of Mr. Smith. O.K., Mr. Smith O.K. Restauranteur

A legitimate patron can easily reserve a table Intuition Suppose: A puzzle takes an hour to solve There are 40 tables in restaurant Reserve at most one day in advance A legitimate patron can easily reserve a table

Intuition ??? Would-be saboteur has too many puzzles to solve

The client puzzle protocol Service request M Server Client Buffer O.K.

What does a puzzle look like?

Puzzle basis: partial hash inversion partial-image X’ ? k bits ? pre-image X 160 bits hash image Y Pair (X’, Y) is k-bit-hard puzzle

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

Puzzle construction Client Server Secret S Service request M

Puzzle construction Server computes: hash Puzzle hash secret S time T request M hash Puzzle pre-image X hash image Y

Sub-puzzle Construct a puzzle consists of m k-bit-hard sub-puzzles. Why not use k+logm bit puzzles? Probability of guessing the right solution is different in these two cases. 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.

Puzzle properties Puzzles are stateless Puzzles are easy to verify Hardness of puzzles can be carefully controlled Puzzles use standard cryptographic primitives

Client puzzle protocol (normal) Mi1 : first message of ith execution of protocol M

Client puzzle protocol (under attack) P: puzzle with m sub-puzzles t: timestamp of puzzle τ: time to receive solution T1: valid time of puzzle

Where to use client puzzles?

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

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

Conclusions

Contributions of paper Introduces idea of client puzzles for on-the-fly resource access control Puzzle and protocol description Rigorous mathematical treatment of security using puzzles -- probabilistic/guessing attack

Questions?