• No results found

Proxychain: Developing a Robust and Efficient Authentication Infrastructure for Carrier-Scale VoIP Networks. Italo Dacosta and Patrick Traynor

N/A
N/A
Protected

Academic year: 2021

Share "Proxychain: Developing a Robust and Efficient Authentication Infrastructure for Carrier-Scale VoIP Networks. Italo Dacosta and Patrick Traynor"

Copied!
24
0
0

Loading.... (view fulltext now)

Full text

(1)

Proxychain: Developing a Robust and

Efficient Authentication Infrastructure for

Carrier-Scale VoIP Networks

(2)

•  Finding the right balance between performance /scalability and security is a well-known challenge •  Robust but computationally expensive security

mechanisms are difficult to deploy in production environments

–  S-BGP, DNSSEC

•  Weaker but more efficient security mechanisms are generally broken and abused

–  WEP, IKE Aggressive mode

(3)

Another Example: SIP Authentication

•  Session Initiation Protocol (SIP)

–  Establishes, manages and terminates sessions between two or more clients

–  Generally associated with VoIP

•  RFC 3261 recommends several security

mechanisms: Digest authentication, SSL/TLS, IPsec and S/MIME

•  However, Digest authentication is typically the only one employed

(4)

SIP Digest Authentication

-  Challenge-response authentication

protocol

-  Based on cryptographic hash operations

(MD5)

(5)

SIP Dialogs with Digest Authentication

INVITE 407 Response [realm, n] INVITE [H(H(uid||realm||pwd)||n||H(method||URI) )] uid H(uid||realm||pwd) INVITE INVITE 407 Response [realm, n] INVITE [H(H(uid||realm||pwd)||n||H(method||URI))] uid H(uid||realm||pwd) INVITE 1 2 Request to DB always required

(6)

Problems with Digest Authentication

•  Inefficient in scenarios with

a remote authentication

service or database

–  RTT added to each authentication operation

–  One request to the database per authenticated SIP message –  High load in the database if it is shared by multiple SIP

servers

•  Considered a weak authentication protocol

(7)

Our Scenario: A Nationwide VoIP Provider

P = SIP Proxies

(8)

0 5000 10000 15000 20000 25000 0 5000 10000 15000 20000 25000 30000 35000 Measured Throughput (cps) Offered Load (cps) No Authentication Digest Authentication

The Problem: Digest Authentication

Performance in Our Scenario

≈ 24,000 cps (no auth.)

≈ 1,160 cps (Digest auth.)

(9)

Our Proposed Solution

•  Reduce the number of requests to the

database by caching temporary

authentication credentials in the proxies

•  Use hash chains to build these

temporary credentials

– Take advantage of hash chains properties

• 

Caching Digest auth. credentials

reduces security!

(10)

Hash Chains Background

•  Sequence of one-time authentication tokens

•  Created by applying a cryptographic hash

function to a secret value r multiple times

(11)

Methodology

•  Design and implementation of new SIP

authentication protocol: Proxychain

•  Experimental evaluation

– Call throughput

– Bandwidth utilization – CPU utilization

(12)

Proxychain Design Goals

•  Efficiency

– Faster authentication operations

•  Scalability

– Support larger number of users and proxies

•  Security

(13)

Proxychain SIP Dialogs

INVITE [nAP] INVITE A, P Hl(tkA), l, nDA, nDP, tkP 407 Response [i, P, nDA, nDP, HMAC(tkP, nAP||i)]

INVITE [A, B, i, HMAC(tkP, A||B||i), Hi-1(tk

A)]

INVITE

INVITE [nAP]

407 Response [i-1, P, nDA, nDP, HMAC(tkP, nAP||i-1)]

INVITE [A, B, i-1, HMAC(tkP, A||B||i-1), Hi-2(tk

A)] No request to DB is required 1 2 Secure Channel

(14)

Proxychain implementation

•  Modifications to proxy, database

and client software

– Implemented in C language

– Relatively small when compared to original code base

•  Total credential size (MD5): 134 bytes

– Only ≈26 MB of proxy’s memory required for storing 200,000 users credentials

(15)

Experimental Setup

•  Planetlab for obtaining real

RTT values

•  GT Emulab testbed for

database and proxies

– OpenSIPS for proxies – MySQL for the database

•  Nine high-capacity servers for generating

SIP call traffic

(16)

Results: Call Throughput

0 5000 10000 15000 20000 25000 0 5000 10000 15000 20000 25000 30000 35000 Measured Throughput (cps) Offered Load (cps) No Authentication Digest Authentication Proxychain ≈ 24,000 cps (no auth.) ≈ 1,160 cps (Digest auth.) ≈ 19,700 cps (Proxychain)

(17)

Results: Database CPU Utilization

-20 0 20 40 60 80 100 120 140 160 180 0 100 200 300 400 500 600

MySQL % CPU utilization

Digest authentication. Proxychain

DB saturation (dual core machine)

(18)

Results: Scalability

0 5000 10000 15000 20000 25000 3 4 5 6

Maximum usable throughput (cps)

# of proxies

Digest authentication. Proxychain

y = 3243.9x + 416.5

(19)

Results: INVITE and BYE Authentication

0 5000 10000 15000 20000 0 5000 10000 15000 20000 25000 30000 35000 Measured Throughput (cps) Proxychain (INVITE)

Proxychain (INVITE and BYE)

≈ 19,700 cps (INVITE)

≈ 12,000 cps (INVITE+BYE)

(20)

Discussion: Performance and Scalability

•  Proxychain reduces the effects of network

latency, allowing higher call throughput

•  Lower load to the database allows more

(21)

Discussion: Performance and Scalability

•  Hash chains allow constant storage space

– Dynamic reprovisioning (future work)

•  Key assumption: each proxy caches most of

its users’ credentials (>75%)

– Pre-fetching mechanism

(22)

Discussion: Security

•  Security improvements over Digest

authentication and hash chain protocols

– Efficient mutual authentication, additional security verifications

•  Protection against passive and active

attackers

– Stealing credentials from a proxy does not

allow user impersonation (only affects

(23)

Conclusions

•  Proxychain simultaneously provides a robust,

scalable and efficient authentication mechanism for carrier-scale SIP providers without additional HW •  Even non-carrier level infrastructures with

centralized authentication service can benefit from Proxychain

•  The key concepts behind Proxychain can be applied to authentication protocols in other domains

(24)

Questions?

References

Related documents

Results: Among 125 prediabetic participants, prevalence of microalbuminuria was 12.8%, c-peptide levels was elevated in 46.4 %, but none of the study participants

Teachers’ Perceptions of Their Practices Related to Implementing Teachers’ Perceptions of Their Practices Related to Implementing a PBIS Plan in the Intermediate Grade Levels.. a

These signs make difference between current descriptions of organizational loyalty and organizational commitment (HuiPoo et al., 2012). A model with three components has been

Utilization: The objective of resource utilization in the current characterization of the Pacific whiting fishery is measured by the weight of product leaving the processing

Figura 11 – Poder de emisión de polvo de la composición cerámica objeto de estudio durante las distintas etapas del proceso de fabricación de baldosas cerámicas. sobre todo respecto

As depicted in Figure 7, below, we estimate that if LPI providers set their rates to produce a 55% loss ratio in 2012, then the Enterprises would have reimbursed their servicers $202

In this thesis, a Communication and Acquisition Protocol was integrated in the Cam- eraApp Android Application developed, so that the user can control image capture with the

 Analysis of 2007 data did not show any significant quality differences between high price and low price nursing homes on other quality measures, including resident or