Session Initiation Protocol R94922133 張榮宏 R94922143 呂詩禹.

Slides:



Advertisements
Similar presentations
SIP, Presence and Instant Messaging
Advertisements

Presence, Security and Privacy. VON The Current Environment Many Faces of Security Authentication Verify someone is who they.
SIP and Instant Messaging. SIP Summit SIP and Instant Messaging What Does Presence Have to Do With SIP? How to Deliver.
IM May 24, 2000 Introduction to SIP Jonathan Rosenberg Chief Scientist.
Siebel Web Services Siebel Web Services March, From
Information-Centric Networks09c-1 Week 9 / Paper 3 VoCCN: Voice Over Content-Centric Networks –V. Jacobson, D. K. Smetters, N. H. Briggs, M. F. Plass,
SIP issues with S/MIME and CMS Rohan Mahy SIP, SIPPING co-chair.
July 20, 2000H.323/SIP1 Interworking Between SIP/SDP and H.323 Agenda Compare SIP/H.323 Problems in interworking Possible solutions Conclusion Q/A Kundan.
Tom Behrens Adam Muniz. Overview What is VoIP SIP Sessions H.323 Examples Problems.
Voice over IP Fundamentals
Security in VoIP Networks Juan C Pelaez Florida Atlantic University Security in VoIP Networks Juan C Pelaez Florida Atlantic University.
Chapter 5 standards for multimedia communications
IP Communications Services Redefining Communications Teresa Hastings Director WorldCom SIP Services Conference – April 18-20, 2001.
Socket Layer Security. In this Presentation: need for web security SSL/TLS transport layer security protocols HTTPS secure shell (SSH)
CMSC 414 Computer and Network Security Lecture 26 Jonathan Katz.
An Overview of SIP Security Dr. Samir Chatterjee Network Convergence Lab Claremont Graduate University
1 Kommunikatsiooniteenuste arendus IRT0080 Loeng 5 Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.
1 The Critical Role of Sip&H.323 Internetworking in Next- Generation Telephony Dr. Samir Chatterjee Associate Professor School of Information Science ;
SIP Security Issues: The SIP Authentication Procedure and its Processing Load Stefano Salsano, DIE — Universit à di Roma “ Tor Vergata ” Luca Veltri, and.
SIP Chapter 5. SIP History 1980s – first packet multimedia experiments 1992 – first IETF audio-cast 1996 – first SIP related IETF drafts Session Invitation.
Voice over IP and IP telephony Network convergence – Telephone and IT – PoE (Power over Ethernet) Mobility and Roaming Telco – Switched -> Packet (IP)
H. 323 and firewalls: Problem Statement and Solution Framework Author: Melinda Shore, Nokia Presenter: Shannon McCracken.
K. Salah 1 Chapter 31 Security in the Internet. K. Salah 2 Figure 31.5 Position of TLS Transport Layer Security (TLS) was designed to provide security.
Cmpe 491 Special Project In Computer Engineering SIP User Agent In JAVA Alp Eren YILMAZ & Serdar YALÇINKAYA.
A Generic Event Notification System Using XML and SIP Knarig Arabshian and Henning Schulzrinne Department of Computer Science Columbia University
Secure communications Week 10 – Lecture 2. To summarise yesterday Security is a system issue Technology and security specialists are part of the system.
SIP Security Matt Hsu.
IRT Lab IP Telephony Columbia 1 Henning Schulzrinne Wenyu Jiang Sankaran Narayanan Xiaotao Wu Columbia University Department of Computer Science.
Presented by: Shivanagouda Biradar Yousof Pakzad This presentation is submitted to Prof. El Saddik in partial fulfillment of the requirements for the course.
SIP Programming : SIP has texture encoding feature. [1] SIP allows third parties or user to program SIP follows HTTP programming model.
Agenda Introduction to 3GPP Introduction to SIP IP Multimedia Subsystem Service Routing in IMS Implementation Conclusions.
Secure Telephony Enabled Middle-box (STEM) Maggie Nguyen Dr. Mark Stamp SJSU - CS 265 Spring 2003 STEM is proposed as a solution to network vulnerabilities,
Session Initialization Protocol (SIP)
Internet Vulnerabilities & Criminal Activities 1.2 – 9/12/2011 Structure of Internet Communications 1.2 – 9/12/2011 Structure of Internet Communications.
8: Network Security8-1 Security in the layers. 8: Network Security8-2 Secure sockets layer (SSL) r Transport layer security to any TCP- based app using.
Ingate & Dialogic Technical Presentation SIP Trunking Focused.
SIP? NAT? NOT! Traversing the Firewall for SIP Call Completion Steven Johnson President, Ingate Systems Inc.
Session Initiation Protocol Team Members: Manjiri Ayyar Pallavi Murudkar Sriusha Kottalanka Vamsi Ambati Girish Satya LeeAnn Tam.
Chapter 6: Packet Filtering
Implementing ISA Server Publishing. Introduction What Are Web Publishing Rules? ISA Server uses Web publishing rules to make Web sites on protected networks.
Support Services & IP Multimedia Subsystem (IMS)
1 © NOKIA 1999 FILENAMs.PPT/ DATE / NN SIP Service Architecture Markus Isomäki Nokia Research Center.
Cosc 4765 SSL/TLS and VPN. SSL and TLS We can apply this generally, but also from a prospective of web services. Multi-layered: –S-http (secure http),
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
Session Initiation Protocol (SIP) 王承宇 張永霖.
H.323 An International Telecommunications Union (ITU) standard. Architecture consisting of several protocols oG.711: Encoding and decoding of speech (other.
Presented By Team Netgeeks SIP Session Initiation Protocol.
1 Security Protocols in the Internet Source: Chapter 31 Data Communications & Networking Forouzan Third Edition.
©2000, Columbia University “A flexible architecture to support wide range of multimedia communication applications, both clients and servers”
VoN September ‘98 1 9/17/98 VoN Standards Update Jonathan Rosenberg Bell Laboratories September 17, 1998.
Omar A. Abouabdalla Network Research Group (USM) SIP – Functionality and Structure of the Protocol SIP – Functionality and Structure of the Protocol By.
Security, NATs and Firewalls Ingate Systems. Basics of SIP Security.
Voice over IP B 林與絜.
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
Chapter 32 Internet Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Project Objectives A multi-function programmable SIP user agent for multimedia communications, such as audio, video, white board, desktop sharing, shared.
1 Internet Telephony: Architecture and Protocols an IETF Perspective Authors:Henning Schulzrinne, Jonathan Rosenberg. Presenter: Sambhrama Mundkur.
The Session Initiation Protocol - SIP
Analysis of SIP security Ashwini Sanap ( ) Deepti Agashe ( )
S Postgraduate Course in Radio Communications. Application Layer Mobility in WLAN Antti Keurulainen,
Chapter 7 : Web Security Lecture #1-Week 12 Dr.Khalid Dr. Mohannad Information Security CIT 460 Information Security Dr.Khalid Dr. Mohannad 1.
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.
SOSIMPLE: A Serverless, Standards- based, P2P SIP Communication System David A. Bryan and Bruce B. Lowekamp College of William and Mary Cullen Jennings.
Postech DP&NM Lab Session Initiation Protocol (SIP) Date: Seongcheol Hong DP&NM Lab., Dept. of CSE, POSTECH Date: Seongcheol.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Internet Protocol Version4 (IPv4)
SIP Programming : SIP has texture encoding feature.[1]
IPsec Problems and Solutions
Session Initiation Protocol
Net 431: ADVANCED COMPUTER NETWORKS
Presentation transcript:

Session Initiation Protocol R 張榮宏 R 呂詩禹

Sipsak Demo

What is it? SIPSAK: –It’s a small command line tool for developers and administrators of Session Initiation Protocol applications. Try it on FreeBSD: –/usr/ports/net/sipsak Web site: –sipsak.org

How to use it? man sipsak Send an OPTIONS request to and display received replies –sipsak -vv -s Send the instant message "Lunch time!" to the colleague and show result: –sipsak -M -v -s -B "Lunch time!"

SIP Security

What problems do users face?  四面楚歌

SIP Security SIP security is a vast and challenging field. Authentication – Can users steal other users identity? Integrity – Is the SIP message received the same as the one sent? Confidentiality – Is someone else listening on your SIP call setup?

Threats Fake requests (e.g., fake From) Modification of content –R–REGISTER Contact –S–SDP to redirect media Insertion of requests into existing dialogs: BYE, re-INVITE Denial of service (DoS) attacks Privacy Trust domains – can proxies be trusted?

SIP Security Mechanisms SIP is HTTP-like How do we secure HTTP services? –HTTP HTTPS (SSL) TSLTCP based Transport Layer Security (TSL) – PGP (Pretty Good Privacy) S/MIME –IP based communication IPsec (IP Security)

Solutions for securing SIP

HTTP Digest Authentication Example given in RFC 2617 –C–Client request (user: Mufasa passwd: Circle Of Life) –S–Server response: ?

Generating the MD5 values

HTTP Digest authentication parametermeaning realm client domain domain destination algorithm hash algorithm: MD5, MD5-sess nonce server-chosen nonce cnonce client-chosen nonce nc # times nonce has been used digest-uri destination qop protection (auth, auth-int) opaque string echoed by client username user ’ s name in specified realm response H(H(A1):nonce:nc:cnonce:qop:H(A2))

HTTP Digest authentication response = H(H(A1):nonce:nc:cnonce:qop:H(A2)) A1 = username:realm:password A2 = method:URI or method:URI:H(body) where H(x) = MD5(x)

SIP Proxy Digest Authentication Proxy Server using Digest Authentication Proxy Server Invite

SIP Proxy Digest Authentication Proxy Server using Digest Authentication Proxy Server Invite Challenge

TLS security: SIPS URI SIPS scheme added in RFC 3261 TLS must be used on the whole path. Can not be applied to UDP-based SIP (only TCP or other reliable transport protocol) Applied hop-by-hop All SIP proxies required to implement

How to secure the talk? Securing the real-time media streams Multimedia streams are packet-oriented Encryptions and authentication algorithms should not cause too much delay Transmission must be UDP based Only two security mechanisms are currently available.

Securing the real-time media streams

Secure Real-Time Transport Protocol (SRTP) The Secure RTP Packet Format:

SRTP Default Encryption Algorithm

Secure Real-Time Transport Protocol (SRTP) The Secure RTCP Packet Format:

Conclusion VoIP security is complex –Numerous protocols –NAT/firewall traversal issues –QoS issues Technologies are in place to secure VoIP –Solutions we ’ ve discussed –However, no “ standard ” approach is being used Current VoIP providers do not secure calls

SIP Programming

SIP follows HTTP programming model Three mechanisms suggested in IETF –Call Processing Language ( SIP – CPL ) –Common Gateway Interface ( SIP – CGI ) –SIP Servlet Other Options –Creation Markup Language (SCML) –Voice Extensible Markup Language (VoiceXML) –Call Control extensible Markup Language (CCXML)

SIP Programming Examples –“discard all calls from Monica during my business hours” –“redirect authenticated friends to my cell phone, anyone else to my secretary” –“if busy, return my homepage and redirect to recorder” Users and third parties may program

SIP Programming

Where Services Locate? Source: H. Schulzrinne: “ Industrial Strength IP Telephony ”

Common Gateway Interface Almost identical to HTTP CGI Language independent ( Perl, Tcl, C, C++,... ) –Any binary may be executed as a separate program Communicates through IO and environment variables. –More flexible but more risky Unmanaged Resource Allocating –Single CGI may crash the server or user client Feb. 1, 2001: RFC 3050 (Common Gateway Interface for SIP) published

Call Processing Language Designed by the IETF to support sophisticated telephony services –May be used by both SIP or H.323. XML based scripting language –Extensive –Easily edited by GUI tools –Portability allows users to move across servers. Lightweight CPL interpreter is need –Better security

An Example A simple script that blocks anonymous callers

Java Servlets Similar to HTTP servlets Resource Managed By Container The class runs within a JVM (Java Virtual Machine) on server Security provided by Java Portable between OSs & servers

JAIN SIP The Java-standard interface to a SIP signaling stack. –Standardizes the interface to the stack. –Standardizes message interface. –Standardizes events and event semantics. –Application portability -verified via the TCK. Designed for developers who require powerful access to the SIP protocol. JAIN SIP can be utilized in a user agent, proxy, registrar or imbedded into a service container.

SIP Implementation Structure

Packages General package –Defines the architectural interfaces, the transaction and dialog interfaces and the event objects of the specification. Address package –Address package contains a generic URI wrapper and defines SIP URI and Tel URIs interfaces. Message package –Defines the interfaces necessary for the Request and Response messages. Header packages –Header package defines interfaces for all the supported headers and extension headers

Application - Stack Creation Initialize Stack using SipFactory: try { Properties properties = new Properties(); properties.setProperty("javax.sip.IP_ADDRESS", " "); properties.setProperty("javax.sip.OUTBOUND_PROXY", " :5070/UDP"); ……// Other initialization properties. try { sipStack = sipFactory.createSipStack(properties); } catch(SipException e) { System.exit(-1); }

Application – Request Creation Initialize Request using Factories: try { SipURI requestURI = addressFactory.createSipURI (toUser, toSipAddress); // … Create other headers Request request = messageFactory.createRequest (requestURI, Request.INVITE, callIdHeader, cSeqHeader, fromHeader, toHeader, viaHeaders, maxForwards); }

Application - Sending Requests Send outgoing messages: try { // Create the client transaction ClientTransaction inviteTid = sipProvider.getNewClientTransaction(request); // send the request inviteTid.sendRequest(); }

HIGH-LEVEL SERVICE CREATION FRAMEWORK Service Creation Environment (SCE) –GUI Develop IDE Service Logic Execution Environment (SLEE)

HIGH-LEVEL SERVICE CREATION FRAMEWORK

Mechanism choosing Portability vs Performance –Portability needed if services deployed at multiple servers or end-devices. –Portable languages (CPL) need to be interpreted (processing delay) Deployment scenario decides service creation mechanism.

Implementations BaseVoice Vanilla –J2EE-based SIP Server, JAIN SIP API v1.1. SIPD –SIP CGI-BIN support Meetinghouse SIP Proxy –CPL support Source: “ ”

Reference f Tutorial.pdf Creating Value Added Services in Internet Telephony: An Overview and a Case Study on a High-Level Service Creation Environment -- Roch H. Glitho, Ferhat Khendek, and Alessandro De Marco