Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin

Slides:



Advertisements
Similar presentations
BASIC CRYPTOGRAPHY CONCEPT. Secure Socket Layer (SSL)  SSL was first used by Netscape.  To ensure security of data sent through HTTP, LDAP or POP3.
Advertisements

How Much Anonymity does Network Latency Leak? Paper by: Nicholas Hopper, Eugene Vasserman, Eric Chan-Tin Presented by: Dan Czerniewski October 3, 2011.
Network Layer and Transport Layer.
Building a Peer-to-Peer Anonymizing Network Layer Michael J. Freedman NYU Dept of Computer Science Public Design Workshop September 13,
Crowds: Anonymity for Web Transactions Paper by: Michael K. Reiter and Aviel D. Rubin, Presented by Eric M. Busse Portions excerpt from Crowds: Anonymity.
Privacy on the Web Gertzman Lora Krakov Lena. Why privacy? Privacy is the number one consumer issue facing the internet. An eavesdropper (server, service.
Freenet A Distributed Anonymous Information Storage and Retrieval System I Clarke O Sandberg I Clarke O Sandberg B WileyT W Hong.
1 Chapter 13: Representing Identity What is identity Different contexts, environments Pseudonymity and anonymity.
Anonymity on the Web: Onion routing and Crowds. 2 Outline  the problem of user privacy  basic concepts of anonymous communication  MIXes  Onion routing.
Anonymity on the Web: A Brief Overview By: Nipun Arora uni-na2271.
Anonymizing Network Technologies Some slides modified from Dingledine, Mathewson, Syverson, Xinwen Fu, and Yinglin Sun Presenter: Chris Zachor 03/23/2011.
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
On the Anonymity of Anonymity Systems Andrei Serjantov (anonymous)
Intranet, Extranet, Firewall. Intranet and Extranet.
CSCI 5234 Web Security1 Privacy & Anonymity in the WWW Ch. 12, Oppliger.
Lecture 28: Anonymity on the Web Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin.
Presentation on Osi & TCP/IP MODEL
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
11 SECURING YOUR NETWORK PERIMETER Chapter 10. Chapter 10: SECURING YOUR NETWORK PERIMETER2 CHAPTER OBJECTIVES  Establish secure topologies.  Secure.
Crowds: Anonymity for Web Transactions Michael K. Reiter Aviel D. Rubin Jan 31, 2006Presented by – Munawar Hafiz.
Anonymity – Crowds R. Newman. Topics Defining anonymity Need for anonymity Defining privacy Threats to anonymity and privacy Mechanisms to provide anonymity.
Lecture 14: Anonymity on the Web (cont) Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin.
Network Security. 2 SECURITY REQUIREMENTS Privacy (Confidentiality) Data only be accessible by authorized parties Authenticity A host or service be able.
TCP/IP (Transmission Control Protocol / Internet Protocol)
Lecture 13: Anonymity on the Web Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin.
Anonymity - Background R. Newman. Topics Defining anonymity Need for anonymity Defining privacy Threats to anonymity and privacy Mechanisms to provide.
Ways to reduce the risks of Crowds and further study of web anonymity By: Manasi N Pradhan.
Onion Routing R. Newman. Topics Defining anonymity Need for anonymity Defining privacy Threats to anonymity and privacy Mechanisms to provide anonymity.
Modified Onion Routing GYANRANJAN HAZARIKA AND KARAN MIRANI.
1 Anonymous Communications CSE 5473: Network Security Lecture due to Prof. Dong Xuan Some material from Prof. Joan Feigenbaum.
IP Security (IPSec) Matt Hermanson. What is IPSec? It is an extension to the Internet Protocol (IP) suite that creates an encrypted and secure conversation.
1 Anonymity. 2 Overview  What is anonymity?  Why should anyone care about anonymity?  Relationship with security and in particular identification 
SESSION HIJACKING It is a method of taking over a secure/unsecure Web user session by secretly obtaining the session ID and masquerading as an authorized.
Network Security Confidentiality Using Symmetric Encryption Chapter 7.
Firewalls Definition: Device that interconnects two or more networks and manages the network traffic between those interfaces. Maybe used to: Protect a.
Security fundamentals
Chapter 5 Network Security Protocols in Practice Part I
IPSecurity.
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
Encryption and Network Security
Chapter 4 Introduction to Network Layer
Part I. Overview of Data Communications and Networking
IT443 – Network Security Administration Instructor: Bo Sheng
Computer Data Security & Privacy
Prepared By : Pina Chhatrala
Principles of Network Applications
Anonymous Communication
TCP Transport layer Er. Vikram Dhiman LPU.
Internet Networking recitation #12
NET323 D: Network Protocols
Chapter 2 Introduction Application Requirements VS. Transport Services
Communication Networks NETW 501 Tutorial 3
Packet Switching To improve the efficiency of transferring information over a shared communication line, messages are divided into fixed-sized, numbered.
Chapter 4 Introduction to Network Layer
An Introduction to Privacy and Anonymous Communication
0x1A Great Papers in Computer Security
Chat Refs: RFC 1459 (IRC).
NET323 D: Network Protocols
Process-to-Process Delivery:
Path key establishment using multiple secured paths in wireless sensor networks CoNEXT’05 Guanfeng Li  University of Pittsburgh, Pittsburgh, PA Hui Ling.
Anonymous Communication
دیواره ی آتش.
Introduction to Network Security
Anonymous Communication
Anonymity Modified from Christo Wilson, Levente Buttyan, Michael K. Reiter and Aviel D. Rubin.
Process-to-Process Delivery: UDP, TCP
Anonymous Communication
Network Basics and Architectures Neil Tang 09/05/2008
Presentation transcript:

Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin Anonymity Modified from Levente Buttyan, Michael K. Reiter and Aviel D. Rubin

User privacy – the problem private information is processed and stored extensively by various individuals and organizations location of user  telecom operators financial situation of user  banks, tax authorities wealth of user  insurance companies shopping information of user  credit card companies, retailers (via usage of fidelity cards) illnesses of user  medical institutions … complete and meaningful profiles on people can be created and abused information technology makes this easier no compartmentalization of information cost of storage and processing (data mining) decreases  technology is available to everyone

User privacy – the goal private data should be protected from abuse by unauthorized entities transactional data access/usage logs at telecom operators, buildings, parking, public transport, … data that reveals personal interests rentals, credit card purchases, click stream data (WWW), … data that was disclosed for a well-defined purpose tax data revealed to tax authorities, health related data revealed to doctors, address information revealed in mail orders, …

User privacy – existing approaches data avoidance “I don’t tell you, so you can’t abuse it.” effective but not always applicable often requires anonymity examples: cash transactions, public phones data protection “If ever you abuse it, you will be punished.” well-established approach difficult to define, enforce, and control requires legislation or voluntary restrictions multilateral security cooperation of more than two parties shared responsibilities and partial knowledge combinations of the above

Anonymous Communication Concepts What do we want to hide? sender anonymity attacker cannot determine who the sender of a particular message is receiver anonymity attacker cannot determine who the intended receiver of a particular message is unlinkability attacker may determine senders and receivers but not the associations between them (attacker doesn’t know who communicates with whom)

Anonymous Communication Concepts From whom do we want to hide this? communication partner (sender anonymity) external attackers local eavesdropper (sniffing on a particular link (e.g., LAN)) global eavesdropper (observing traffic in the whole network) internal attackers (colluding) compromised system elements (e.g., routers)

Types of attackers collaborating crowd members local eavesdropper crowd members that can pool their information and deviate from the protocol local eavesdropper can observe communication to and from the users computer end server the web server to which the transaction is directed

Anonymity loves company The sole mechanism of anonymity is blending and obfuscation. The Crowds approach Data may be in clear text Hide in a group and make everyone in the group equally responsible for an act The Mix approach Obfuscate the data Blend the data with cover traffic The Onion Routing approach Obfuscate the data Use cell padding to make data look similar

Crowds in operation: Setup User first joins a crowd of other users and he is represented by a jondo process on his local machine. He registers to a server machine which is called a Blender. User configures his browser to use the local jondo as the proxy for all new services. The blender sends the data of other nodes in the crowd to the local jondo. All other members in the crowd go through a Join Commit.

Crowds in operation: Communication User passes her request to a random member in the crowd. The selected router flips a biased coin with forwarding probability pf . With probability (1- pf ), it delivers the message directly to destination. Otherwise it forwards the message to a randomly selected next router.

Distinct Characteristics of Crowds Use of encryption A single path key is used for end-to-end encryption At each node, path key is re-encrypted using link encryption Fast stream cipher for encrypting reply traffic Static Path Paths are changed during join and failure Protection against timing attacks Sender revealed if it is an immediate predecessor of malicious jondo. Introduce delays for thwarting attacks

Concepts coming out of Crowds Every node is a MIX Making the end nodes and the MIXes indistinguishable Distributed workload Used in MorphMix / Tarzan for Peer to Peer communication The leaky pipe architecture Any node is an exit node Used in Tor to provide better protection Robustness No single point of failure Distributed Blender Anonymity loves company The more the user base, the better the anonymity Highly scalable

Limitations of Crowds Content in plaintext Apply end-to-end encryption to protect content Limitation: Gathering multimedia content Restriction on using ActiveX controls etc. Current Internet landscape is different from this requirement Vulnerable to DoS attacks Malicious jondos can simply drop packets. Performance overhead Increased network traffic, increased retrieval time and load on jondos Deployment problem with firewalls

Chaum MIX goal implementation sender anonymity (for communication partner) unlinkability (for global eavesdropper) implementation { r, m }KMIX  MIX  m where m is the message and r is a random number MIX batches messages discards repeats changes order changes encoding

MIX chaining defense against colluding compromised MIXes if a single MIX behaves correctly, unlinkability is still achieved MIX MIX MIX

Crowds versus MIX networks Crowds and MIX solve different anonymity problems Crowds provide (probable innocence) sender anonymity MIX networks provide sender and receiver un-linkability Different type of protection against global passive eavesdropper Crowds provide no protection MIX networks provide protection Different approach in routing (Efficiency) In Crowds paths are selected randomly In a MIX, the circuit has to be determined first

Anonymizer www.anonymizer.com special protection for HTTP traffic acts as a proxy for browser requests rewrites links in web pages and adds a form where URLs can be entered for quick jump disadvantages: must be trusted single point of failure/attack browser request anonymizer request server reply reply href =“http://anon.free.anonymizer.com/http://www.server.com/”  href =“http://www.server.com/”

Onion routing general purpose infrastructure for anonymous comm. supports several types of applications through the use of application specific proxies operates over a (logical) network of onion routers onion routers are real-time Chaum MIXes messages are passed on nearly in real-time this may limit mixing and weaken the protection! onion routers are under the control of different administrative domains makes collusion less probable anonymous connections through onion routers are built dynamically to carry application data distributed, fault tolerant, and secure

Overview of architecture long-term socket connections application (initiator) onion router application proxy - prepares the data stream for transfer - sanitizes appl. data - processes status msg sent by the exit funnel application (responder) exit funnel - demultiplexes connections from the OR network - opens connection to responder application and reports a one byte status msg back to the application proxy onion proxy - opens the anonymous connection via the OR network - encrypts/decrypts data entry funnel - multiplexes connections from onion proxies

Onions an onion is a multi-layered data structure it encapsulates the route of the anonymous connection within the OR network each layer contains backward crypto function (DES-OFB, RC4) forward crypto function (DES-OFB, RC4) IP address and port number of the next onion router expiration time key seed material used to generate the keys for the backward and forward crypto functions each layer is encrypted with the public key of the onion router for which data in that layer is intended bwd fn | fwd fn | next = blue | keys bwd fn | fwd fn | next = green | keys bwd fn | fwd fn | next = 0 | keys

OR network setup and operation long-term socket connections between “neighboring” onion routers are established  links neighbors on a link setup two DES keys using the Station-to-Station protocol (one key in each direction) several anonymous connections are multiplexed on a link connections are identified by a connection ID (ACI) an ACI is unique on a link, but not globally every message is fragmented into fixed size cells (48 bytes) cells are encrypted with DES in Output FeedBack mode (null IV) optimization: if the payload of a cell is already encrypted (e.g., it carries part of an onion) then only the cell header is encrypted cells of different connections are mixed but order of cells of each connection is preserved 6 5 4 3 2 1 6 5 4 4 3 3 2 2 1 1 mixing 4 3 2 1

Anonymous connection setup upon a new request, the application proxy decides whether to accept the request opens a socket connection to the onion proxy passes a standard structure to the onion proxy standard structure contains application type (e.g., HTTP, FTP, SMTP, …) retry count (number of times the exit funnel should retry connecting to the destination) format of address that follows (e.g., NULL terminated ASCII string) address of the destination (IP address and port number) waits response from the exit funnel before sending application data

Anonymous connection setup upon reception of the standard structure, the onion proxy decides whether to accept the request establishes an anonymous connection through some randomly selected onion routers by constructing and passing along an onion sends the standard structure to the exit funnel of the connection after that, it relays data back and forth between the application proxy and the connection upon reception of the standard structure, the exit funnel tries to open a socket connection to the destination it sends back a one byte status message to the application proxy through the anonymous connection (in backward direction) if the connection to the destination cannot be opened, then the anonymous connection is closed otherwise, the application proxy starts sending application data through the onion proxy, entry funnel, anonymous connection, and exit funnel to the destination

Anonymous connection setup onion proxy onion application (responder)

Anonymous connection setup onion proxy application (responder) onion bwd: entry funnel, crypto fns and keys fwd: blue, ACI = 12, crypto fns and keys

Anonymous connection setup onion proxy onion ACI = 12 application (responder)

Anonymous connection setup onion proxy application (responder) onion bwd: magenta, ACI = 12, crypto fns and keys fwd: green, ACI = 8, crypto fns and keys

Anonymous connection setup onion proxy onion ACI = 8 application (responder)

Anonymous connection setup onion proxy application (responder) onion bwd: blue, ACI = 8, crypto fns and keys fwd: exit funnel

Anonymous connection setup bwd: entry funnel, crypto fns and keys fwd: blue, ACI = 12, crypto fns and keys onion proxy standard structure bwd: blue, ACI = 8, crypto fns and keys status fwd: exit funnel open socket application (responder) bwd: magenta, ACI = 12, crypto fns and keys fwd: green, ACI = 8, crypto fns and keys

Data movement forward direction backward direction the onion proxy adds all layers of encryption as defined by the anonymous connection each onion router on route removes one layer of encryption responder application receives plaintext data backward direction the responder application sends plaintext data to the last onion router of the connection due to sender anonymity it doesn’t even know who is the real initiator application each onion router adds one layer of encryption the onion proxy removes all layers of encryption

Connection tear-down anonymous connections are terminated by the initiator, the responder, or one of the onion routers in the middle a special DESTROY message is propagated by the onion routers if an onion router receives a DESTROY msg, it passes it along the route forward or backward sends an acknowledgement to the onion router from which it received the DESTROY msg if an onion router receives an acknowledgement for a DESTROY messages it frees up the corresponding ACI

Tor Components Entrance Node Exit Node Directory Servers The first node in a circuit Knows the user Exit Node Final node in the circuit Knows the destination May see actual message Directory Servers Keep list of which onion routers are up, their locations, current keys, exit policies, etc Control which nodes can join network

How Tor Works? A circuit is built incrementally one hop by one hop Alice Bob C2 √ C1 C3 M M OR2 M C2 C3 M OR1 OR3 C1 C2 C3 Port A circuit is built incrementally one hop by one hop Onion-like encryption Alice negotiates an AES key with each router Messages are divided into equal sized cells Each router knows only its predecessor and successor Only the Exit router (OR3) can see the message, however it does not know where the message is from

Invisible Internet Project (I2P) An anonymizing Peer-to-Peer network providing end to end protection utilizes decentralized structure to protect identity of both the sender and the receiver email, torrents, web browsing, IM and more UDP based unlike Tor’s TCP streams

I2P Terminology Router Tunnel Gateway the software which participates in the network Tunnel a unidirectional path through several routers Every router has several incoming connections (inbound tunnels) and outgoing connections (outbound tunnels) Tunnels use layered encryption Gateway first router in a tunnel Inbound Tunnel: first router of the tunnel Outbound Tunnel: creator of the tunnel

I2P Tunnels

I2P Encryption I2P works by routing traffic through other peers All traffic is encrypted end-to-end

Joining the Network

Establishing a Tunnel

Establishing a Connection