Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs

38
Click to edit Master title style Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs Scott Wolchok 1 Owen S. Hofmann 2 Nadia Heninger 3 Edward W. Felten 3 J. Alex Halderman 1 Christopher J. Rossbach 2 Brent Waters 2 Emmett Witchel 2 1 The University of Michigan 2 The University of Texas at Austin 3 Princeton University

description

Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs. Scott Wolchok 1 Owen S. Hofmann 2 Nadia Heninger 3 Edward W. Felten 3 J. Alex Halderman 1 Christopher J. Rossbach 2 Brent Waters 2 Emmett Witchel 2 - PowerPoint PPT Presentation

Transcript of Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs

Page 1: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs

Scott Wolchok1 Owen S. Hofmann2 Nadia Heninger3 Edward W. Felten3 J. Alex Halderman1 Christopher J. Rossbach2 Brent Waters2 Emmett Witchel2

1 The University of Michigan 2 The University of Texas at Austin 3 Princeton University

Page 2: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleRoad Map

1. What is Vanish?

2. Attacking Vanish

3. Costs and performance

4. Countermeasures

5. What went wrong?

Page 3: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleWhy Self-Destructing Data?

“Transient” messages tend to persist

Stored copies enable retroactive attacks

Attacker subpoenas data months or years later

Page 4: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

DHT

Vanish

Alice Bob

Geambasu, Kohno, Levy, Levy — USENIX Security ’09

M M

Mallory

Page 5: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleVanish and Vuze

Vanish uses the Vuze DHT (Distributed Hash Table)

Over 1 million nodes, mostly BitTorrentNodes delete values after 8 hours

Vuze DHT

Page 6: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleVanish and Vuze

Vuze DHT

Shares placed at random locations in the DHTReplicated to 20 “closest” nodes

M

Page 7: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleIs Vanish Secure?

Vanish 0.1 prototype released at publication

Included user-friendly Firefox plugin

Focused wide attention on its practical security

Page 8: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleRoad Map

1. What is Vanish?

2. Attacking Vanish

3. Costs and performance

4. Countermeasures

5. What went wrong?

Page 9: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleDHT Crawling Threat

Threat: attacker might continuously archive all data in the DHT

Later, query archive to decrypt messages

Don’t need specific targets when recording

Page 10: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleCrawling with a Sybil Attack

Page 11: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleMaking the Attack Practical

Insight: have 8 hours to observe fragments

Vuze replicates to 20 nearest nodes1. Every 30 minutes2. On join!

Page 12: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

Page 13: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style“Hopping” Strategy

Sybils “hop” to new IDs every 3 minutes

160x resource amplification over 8 hours

Practical attack needs only ~2000 concurrent Sybils with hopping

Page 14: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleMaking the Attack Practical

Insight: Vuze client is a notorious resource hog

Only 50 instances fit in 2 GB of RAM!

Can we more efficiently support 2000 Sybils?

Page 15: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleOptimized Sybil Client

C, lightweight, event-based implementation

Listen-only (no Vuze routing table!)

Thousands of Sybils in one process

Page 16: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleRoad Map

1. What is Vanish?

2. Attacking Vanish

3. Costs and performance

4. Countermeasures

5. What went wrong?

Page 17: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleAttack Costs?

Vanish paper estimate (for 25% recovery at k=45, n=50):– 87,000 Sybils– $860,000/year

What does attacking Vanish really cost?

Page 18: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleExperiments

1. Insert key shares into the DHT2. Run attack from 10 Amazon EC2 instances3. Measure:

DHT coverage = % key shares recoveredKey coverage = % messages decryptedAttack cost = EC2 charges (Sep. 2009)

Page 19: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleExperimental Results

Cost for >99% Vanish key recovery?Attack Concurrent

SybilsKey Shares Recovered

Annual Attack Cost*

Hopping 500 92% $23,500

Hopping + Optimized

Client

2000 99.5% $9,000

Page 20: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

0%

20%

40%

60%

80%

100%

0 30k 60k 90k 120k 150k 180k 210k 240k 270k

DH

T C

over

age

Effective Sybils

Experiment

Model

DHT Coverage vs. Attack Size

Hopping plus Optimized Client

Page 21: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

0%

20%

40%

60%

80%

100%

0 30k 60k 90k 120k 150k 180k 210k 240k 270k

Key

Rec

over

y

Effective Sybils

7/109/1045/50

Key Recovery vs. Attack Size

25% @ 70k Sybils

99% @ 136k Sybils

Hopping plus Optimized Client

Key-sharingparameters(k/n)

Page 22: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

$0

$2,000

$4,000

$6,000

$8,000

$10,000

$12,000

$14,000

0% 20% 40% 60% 80% 100%

Ann

ual A

ttack

Cos

t

Key Recovery

7/10

9/10

45/50

Annual Cost vs. Key Recovery

25% @ $5000

90% @ $7000

99% @ $9000

Hopping plus Optimized Client

Key-sharingparameters(k/n)

Page 23: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleStorage

$1400/yr for all observed data

$80/yr for potential key shares

Page 24: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleRoad Map

1. What is Vanish?

2. Attacking Vanish

3. Costs and performance

4. Countermeasures

5. What went wrong?

Page 25: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleIncrease Key Recovery Threshold?

Required coverage increases in n and k/n

Why not raise them? (99/100?)

Reliability: some shares lost due to churnPerformance: pushing shares is slow!

Page 26: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleLimit Replication?

Attack exploits aggressive replication

Less replication might make the attack harder, but how much?

More in a few slides…

Page 27: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleSybil Defenses from the Literature?

Client puzzles

Limit ports/IP, IPs/subnet, etc.

Social networking

Page 28: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleDetecting Attackers

Find and target IPs with too many clients

Use node enumerator, Peruze

Can detect attack IPs hours after the attack

Detected the Vanish demo

Page 29: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleRoad Map

1. What is Vanish?

2. Attacking Vanish

3. Costs and performance

4. Countermeasures

5. What went wrong?

Page 30: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleCost Estimation Issues

Vanish paper extrapolated from 8000-node DHT

Assumed Sybils must run continuously

Assumed attacker uses inefficient Vuze client

Page 31: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleCost Not Linear in Recovery

0.0 0.2 0.4 0.6 0.8 1.00.0

0.2

0.4

0.6

0.8

1.0

P recovershare

Pre

co

ve

rV

DO

7/109/1045/50

Key

Reco

very

Fra

ction

Key-sharingparameters(k/n)

Coverage Fraction

Page 32: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleResponse to Our Work

Second report and prototype by Vanish team1

New defenses – Use both Vuze DHT and OpenDHT– Disable replicate-on-join in Vuze– Use less aggressive “threshold replication”

Will these defenses stop real attackers?1 Geambasu, Falkner, Gardner, Kohno, Krishnamurthy, Levy. “Experiences building security applications on DHTs”. Technical report, UW-CSE-09-09-01.

Page 33: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleConclusion

Showed attacks that defeat Vanish 0.1 in practice for $9000/year

Vanish team has proposed new defensesFuture work: are new defenses effective?

Our take: building Vanish with DHTs seems risky.

Page 34: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title style

Defeating Vanish with Low-Cost Sybil Attacks Against Large DHTs

Scott Wolchok1 Owen S. Hofmann2 Nadia Heninger3 Edward W. Felten3 J. Alex Halderman1 Christopher J. Rossbach2 Brent Waters2 Emmett Witchel2

1 The University of Michigan 2 The University of Texas at Austin 3 Princeton University

http://z.cs.utexas.edu/users/osa/unvanish/

Page 35: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleVanish Attack Model

Need to recover k of n fragmentsp = Pr{recover key fragment}Pr{recover VDO} = Pr{recover k or more

fragments}Binomial distributionPr{recover VDO} = (1 )

ni n i

i k

np p

k

Page 36: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleCoverage Model

m Sybils see c of N objectsBalls-in-bins problemExpected fraction = 1 – e-cm/N = 1 – e-sm

s = c/N is the (overlapping) fraction of the network observed by each Sybil

Page 37: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title stylePrior Work

• Enumerating DHT nodes– Cruiser [Stutzbach 2006a,b]– Blizzard [Steiner 2007a]

• Measuring DHT traffic– Mistral [Steiner 2007b]– Montra [Memon 2009]

Page 38: Defeating Vanish with Low-Cost  Sybil Attacks Against Large DHTs

Click to edit Master title styleHopping plus Optimized Client

Concurrent Sybils

Hours # VDO Fragments

Fragments Found

2000 8 1650 1640 (99.4%)

2000 7.5 1700 1692 (99.5%)

500 8 1650 1561 (91.8%)