Top Banner
Security Michael Foukarakis ([email protected] ) 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University, Houston, TX 77005, USA
31

Security Michael Foukarakis ([email protected])[email protected] – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Jan 01, 2016

Download

Documents

Erick Curtis
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Michael Foukarakis ([email protected])– 13/12/2004

A Survey of Peer-to-Peer Security Issues

Dan S. Wallach Rice University, Houston, TX 77005, USA

Page 2: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 3: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Introduction

Peer to Peer systems: Gnutella & Napster: mainly for file sharing CAN, Chord, Pastry, Tapestry: structured

p2p overlays Designed for various services such as

network storage, content distribution, web caching, searching and indexing (use of routing tables)

Page 4: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Introduction

These systems are scalable, fault-tolerant and provide effective load balancing

Making them secure is a challenge Several types of attack:

– Erroneous responses (false data/routes)– Abuse of resources (disk space/bandwidth)– “trust” issues (malicious code)– Other

Page 5: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 6: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

Abstract routing overlay model Nodes and objects have unique identifiers

called nodeIds and keys respectively. Keys are mapped to unique live nodes called roots

Nodes have routing tables and neighbor sets Replica functions are used to map keys to

sets of replica keys

Page 7: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

Pastry Random assignment of nodeIds from a

circular 128-bit id space nodeIds and keys are thought of as a

sequence of digits in base 2b (b is usually 4) Routing is based on prefix

Page 8: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

Pastry routing table

Page 9: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

Message Routing Example

Source node: 65a1fcMessage has key: d46a1c

Message arrives at nodeD467c4 after 4 hops

Page 10: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

System model The system has N nodes Fraction of faulty nodes (f): 0 ≤ f < 1 Faulty nodes form clusters of independent

coalitions whose size is bounded by cN where 1/N ≤ c < f

Parameter c is coalition independency factor

Page 11: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Background, models and solution

System model All IP addresses are static Communication is over Internet connections

– Network-level: no routing through the overlay– Overlay-level: routing through the overlay using

corresponding protocol Cryptographic techniques are used to

prevent data observation and modification

Page 12: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 13: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

The problem: a malicious overlay node can corrupt, delete, deny access to or supply stale copies of all replicas of an object

We need a secure routing technique– Successful delivery of a message even if some

nodes corrupt, drop or misroute it– Successful delivery to all legitimate replica roots

for a given key

Page 14: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

Secure routing requires:– 1)Securely assigning nodeIds to nodes

Attackers can’t choose values of nodeIds assigned to nodes they control

– 2)Securely maintaining the routing tables The fraction of faulty nodes in routing tables is less than

the fraction of faulty nodes in the entire overlay

– 3)Securely forwarding messages At least one copy of a message sent to a key reaches

correct replica roots for the key with high probability

Page 15: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

1)Secure nodeId assignment Nodes might choose their identifiers

maliciously so that it is easy to censor specific documents or appear on the routing table of a victim node

Random assignment of nodeIds is necessary Possible use of a server that is only

consulted when new nodes join

Page 16: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

1)Secure nodeId assignment What if a hostile node or coalition of nodes

try to get a large number of nodeIds? Best solution: moderate the rate at which

nodeIds are given out Other solutions: charging money for nodeId

certificates or external authentication requirements

Page 17: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

2)Robust routing primitives Attackers control a fraction f of the nodes in the p2p

network For h hops, the probability a route is free of malicious

nodes is (1 – f)h Unfortunately, adversaries take advantage from

locality and they try to appear more often in their neighbor's routing table

Constrained routing tables

Page 18: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

3)Robust routing primitives To increase the odds of a message reaching its

destination, we attempt redundant routes In Pastry, source node sends to all its neighbors.

Then, each of them forwards the message to the target node

If at least one route is successful, the message is considered successfully delivered

For f ≤ 30% probability of success is 99.9%

Page 19: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Routing in p2p systems

Ejecting misbehaving nodes That is an open problem If a node is accused of cheating, proof needs

to be presented It’s not clear how proof can be generated at

the routing layer False positives

Page 20: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 21: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage

Systems should be designed to limit how much remote space one can consume without providing a suitable amount of storage for the use of others

The same applies to network bandwidth

Page 22: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Disk Space

A malicious node might choose to claim its storage is full, when it actually has free space

What if we use a central authority again, just like in nodeId assignment? Use of quotas

That way every request to store a document would require a query to the quota authority

Bottleneck

Page 23: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Disk Space

Method 1: Attach Smartcards that provide quota information to each node. – Problem: Impractical, can be hacked

Method 2: Ask your neighbors to act as quota managers. Distribute quota information just like sending messages. – Problem: No incentive for the neighbors

Page 24: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Disk Space

Nodes keep two logs– Local list of files that the node is storing on behalf

of remote nodes– Remote list of files that other nodes are storing on

behalf of the local node Log entries contain IP addresses of remote

nodes and file sizes The local list also contains the amount of free

disk space available

Page 25: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Disk Space

Of course, feeding false information to nodes is a problem

Anonymous communication prevents this This way a node does not know who is

checking on it

Page 26: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Disk Space

Cheating chains Example: A claims it’s storing a file for B and

B confirms that, but no files are actually stored. The same can happen with more nodes

Random audits should be performed with random keys. This way cheaters will be eventually caught, but it is costly

Page 27: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Storage – Network Bandwidth

Bandwidth sharing Micropayment systems Perform query→spend a token Receive a query→get a token Surplus of tokens→refuse to service queries High cost of evaluating validity of tokens Data needs to be widely replicated

Page 28: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 29: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Trust in p2p overlays

Spoofing of search results is possible Solution: implementation of something like

Google’s PageRank technology– For Google, pages linked by “popular” pages are

themselves more popular– We could add this notion of popularity in p2p

systems using the audit log– Users themselves could rank the files

Code → Architecture to safely execute it

Page 30: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Security

Introduction Background, models and solution Routing in p2p systems Storage Trust in p2p overlays Conclusions

Page 31: Security Michael Foukarakis (foukas@ics.forth.gr)foukas@ics.forth.gr – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,

Conclusions

Summary of security techniques– Cryptography– Redundant routing– Economic methods

Diversity of p2p systems → diversity of solutions