Internet DRAFT - draft-zhu-p2psip-security-requirements

draft-zhu-p2psip-security-requirements





P2PSIP Working Group                                           J. Zhu 
Internet Draft                                                  M. Qi 
Intended status: Informational                            China Mobile 
Expires: January 2010                                    July 12, 2009 
                                   
 
                                      
                       P2PSIP Security Requirements 
               draft-zhu-p2psip-securityrequirements-01.txt 


Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.  This document may not be modified,
   and derivative works of it may not be created, and it may not be
   published except as an Internet-Draft.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on January 12, 2010.

Copyright Notice

   Copyright (c) 2009 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents in effect on the date of
   publication of this document (http://trustee.ietf.org/license-info).
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document. 

    

    
 
 
 
Judy                  Expires January 12, 2010                [Page 1] 

Internet-Draft      P2PSIP Security Requirements            March 2009 
    

Abstract 

   This draft discusses the security requirements in Peer-to-Peer (P2P) 
   SIP system. As the P2P SIP is distributed and each peer is equal in 
   it, it should face the extra security threat from traditional system. 
   This draft introduces these security threats at first. After that, 
   the security requirements of P2P SIP system were brought up.  







































 
 
Judy                  Expires January 12, 2010                [Page 2] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

Table of Contents 

    
   1. Introduction................................................4 
   2. Definition..................................................5 
      2.1. General................................................5 
      2.2. Network Entities.......................................5 
      2.3. Network Architecture...................................5 
   3. Security Scenarios..........................................7 
      3.1. VoIP...................................................7 
   4. Security Threats...........................................10 
      4.1. Weak Security Protection Caused by no trust...........10 
      4.2. Routing Modification..................................10 
      4.3. Malicious Code Spreading..............................11 
   5. Security Requirements......................................12 
      5.1. Trust Model...........................................12 
      5.2. Authentication Infrastructure.........................13 
         5.2.1. Centralized Authentication Infrastructure........13 
         5.2.2. Distributed Authentication Infrastructure........13 
      5.3. Protection against Malicious Code Spreading...........14 
   6. Security Considerations....................................16 
   7. IANA Considerations........................................17 
   8. Conclusions................................................18 
   9. References.................................................19 
      9.1. Normative References..................................19 
    




















 
 
Judy                  Expires January 12, 2010                [Page 3] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

1. Introduction 

   This draft introduce the main security concerns and security 
   requirements in Peer-to-Peer SIP architecture [1].  SIP will be used 
   in a peer-to-peer environment with the network development. The 
   traditional mechanism used in SIP should be replaced by distributed 
   mechanism to fit for the P2P network system. As a result, P2P SIP 
   architecture should face new security threats and new security 
   requirements. The purpose of this draft is to list the security 
   requirements and make references for the future security solution 
   study. 

    

































 
 
Judy                  Expires January 12, 2010                [Page 4] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

2. Definition 

   To study the security of P2P SIP system, there must be a security 
   model to describe the system. 

2.1. General 

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in RFC 2119 [RFC2119]. 

2.2. Network Entities 

   The network entities are peers, clients or other functional nodes 
   which are defined in reference [1]. There SHOULD be a special kind of 
   functional nodes named enrollment server to perform 
   authentication/enrollment service for others. 

2.3. Network Architecture 

   The following feature shows a P2P SIP network architecture based on 
   reference model from reference [1]. In this study, three kinds of 
   nodes mentioned above are to be considered. The peer node is basic 
   node which constructs the body of network. A peer can connect to 
   several nodes no matter what kind of these nodes are. A client will 
   be connected directly to peer except enrollment server which can act 
   as a normal peer. The enrollment server will be connected with 
   several peers. 


















 
 
Judy                  Expires January 9, 2010                 [Page 5] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   +------------------------------------------------+ 
   |                                                | 
   | +-------+          +----------------+          | 
   | |Client |          V                V          | 
   | +-------+       +----+       +----------+      | 
   |      ^ +------->|Peer|<--+   |Enrollment|      | 
   |      | |        +----+   |   |  Server  |      | 
   |      | |           ^     |   +----------+      | 
   |      | |           |     |                     | 
   |      | |           |     |                     | 
   |      | |           |     |                     | 
   |      V V           V     |                     | 
   |    +----+       +----+   |  +----+    +------+ | 
   |    |Peer|<----->|Peer|<---->|Peer|<-->|Client| | 
   |    +----+       +----+   |  +----+    +------+ | 
   |     ^           ^  ^     |    ^^               | 
   |     |           |  |     V    ||               | 
   |     |           |  |  +----+  ||               | 
   |     |           |  +->|Peer|<-+|               | 
   |     |           V     +----+   |               | 
   |     V     +--------_-+         |               | 
   |  +------+ |Enrollment|         |               | 
   |  |Client| |  Server  |<--------+               | 
   |  +------+ +----------+                         | 
   +------------------------------------------------+ 
    
                   Figure 1 P2P SIP Network Architecture 



















 
 
Judy                  Expires January 12, 2010                [Page 6] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

3. Security Scenarios 

   To determine the security issues in P2P SIP system, there should be 
   some application scenarios in P2P SIP environment. We will describe 
   these security scenarios first and turn to discussion about security 
   problems and security requirements. 

3.1. VoIP 

   VoIP is an important application scenario in P2P SIP system. 

   In this scenario, client node is the VoIP end user. It will be 
   authenticated by the peer, which is directly connected to, with the 
   authentication vector from enrollment server and in the same time it 
   shall authenticate the peer, and the client can communicate with 
   another client through the security path set up by peers. Peer node 
   is responsible for authenticating fresh VoIP client on behalf of 
   enrolment server and support to negotiate and then provide security 
   link between the peer and the client. Peer is also responsible for 
   locating the other end client and also responsible for establishing a 
   secure link between the peers and transferring data for end to end 
   clients' communication. If a new peer enters the network or old peer 
   exits, the secure link will be changed because the network topology 
   is changed with the new peer. Enrollment server generates 
   authentication vectors based on the authentication request received 
   from the peer who is directly connected to the client and sends 
   vectors to the peer in response. 

   In this scenario, security association should be established between 
   peer and peer/enrollment server for integrity, confidentiality and 
   anti-replay about the signaling and user data. 

   The following figure shows how a client (named client A) calls 
   another client (named client B) by through the P2P SIP network. 

    










 
 
Judy                  Expires January 9, 2010                 [Page 7] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   +-------------------------------------------------+ 
   |                                                 | 
   | +-------+          +----------------+           | 
   | |Client |          V                V           | 
   | +-------+       +----+       +----------+       | 
   |      ^ +------->|Peer|<--+   |Enrollment|       | 
   |      | |        +----+   |   |  Server  |       | 
   |      | |           ^     |   +----------+       | 
   |      | |           |     |                      | 
   |      | |           |     |                      | 
   |      | |           |     |                      | 
   |      V V           V     |         4            | 
   |    +----+  3    +----+   |  +----+--->+-------+ | 
   |    |Peer|<=====>|Peer|<====>|Peer|    |ClientB| | 
   |    +----+       +----+   |  +----+<---+-------+ | 
   |     ^  +-----+  ^  ^     |    ^^   5            | 
   |     |  |  1  |  |  |     V    ||                | 
   |    2|  |     |  |  |  +----+  ||                | 
   |     |  |     |  |  +->|Peer|<-+|                | 
   |     |  |     V  V     +----+   |                | 
   |     V  |  +--------_-+         |                | 
   | +-------+ |Enrollment|         |                | 
   | |ClientA| |  Server  |<--------+                | 
   | +-------+ +----------+                          | 
   +-------------------------------------------------+ 
    
                      Figure 2 VoIP in P2P SIP system 

   1. The client should be authenticated firstly. The peer should send 
   authentication request to the client which it directly connects to. 
   The peer will forward this session request to enrollment server. When 
   the enrollment server received request, it generates authentication 
   vector for the client A and sends it back to the peer. 

   2. The peer will authenticate client by using the authentication 
   vectors. At the same time, the client A should authenticate the peer 
   too. Then this way, the peer and client performs the mutual 
   authentication. It is shown as step 2 in the figure. This process 
   MUST be done just because it is the basic of security environment. 
   Besides this authentication function, the other security protection 
   between peer and client such as integrity and confidentiality will be 
   provided after the security mode negotiation between them. 

   3. The peer with client A will establish SA with the peer with client 
   B. so the security link will be set up between the related peers. 


 
 
Judy                  Expires January 12, 2010                [Page 8] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   4. In this step, the peer with the client B termination will 
   authenticate the client B by using the authentication vectors from 
   the enrollment server. 

   5. Client B performs the authentication for the peer as well. And 
   then they negotiate the security association to provide the security 
   transfer on the communication between them. 

   At the end of this procedure, hop-by-hop security link has been 
   performed in the communication from the end to end user such as 
   client A to client B. 



































 
 
Judy                  Expires January 12, 2010                [Page 9] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

4. Security Threats 

   This section analyzes the security threats about P2P-SIP system. 

4.1. Weak Security Protection Caused by no trust 

   In P2P SIP network, the traditional security mechanism is not used to 
   this network because of the network is distributed and has no 
   centralized point. As the topology of P2P SIP network is different 
   between traditional C/S networks, it will cause some problems 
   mentioned as following: 

   o Security domain will be very difficult to be divided clearly 

   o Acceleration of the security threats and make the attacks easy and 
      impact much more wide areas than before 

   The first bullet point describes that in the P2P SIP network, 
   security domain changes along with new nodes enter the system and/or 
   old nodes leave the system. The traditional security domain division 
   function is no longer fit for P2P SIP network. No node can guarantee 
   the node that had same security domain still can be trust when the 
   network topology changes. 

   The second bullet point describes that nodes will suffer less 
   punishment for malicious action in P2P SIP networks. So nodes will 
   suffer more attacking in the system and will reduce the trust level 
   to other nodes. 

   As mentioned above, P2P SIP nodes have less trust with other nodes. 
   So the network security protection is weakened. 

4.2. Routing Modification 

   Routing protocol is the key protocol and core security mechanism for 
   P2P SIP architecture. It provides some mechanisms, such as 
   adding/deleting peers into system, locating specific peer, updating 
   network status, searching source and the failure management. This 
   will affect the network robust, reduce efficiency of the network. 

   If the routing message is not protected, it will cause problem 
   described as following: 

   o Attacker can spread fake information in the network. It will 
      result peers modify their routing information and make a wrong way 
      path to connect an unavailable peer or to achieve a wrong position. 

 
 
Judy                  Expires January 12, 2010               [Page 10] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

4.3. Malicious Code Spreading 

   In the P2P SIP environment, malicious code such as worm and Trojan 
   horse can spread in the system easily because of the convenient 
   sharing and routing mechanism. Malicious code will cause severe 
   disaster because of what we pointed out as following. 

   o In the P2P SIP environment, each peer has ability to get 
      information about its neighbor node. So malicious code can make 
      attack based on the existed information. This will reduce the 
      difficulty to launch an attack. 

   o In the P2P SIP environment, peers make communication with each 
      other directly and don't need to be transferred by servers. Peers 
      have different security levels and will suffer attacking more 
      easily. In this situation, one node will be infected with 
      malicious code by several other peers and will infect many other 
      peers as the malicious resource. 

   o As the logical-adjacent peers may be far away in geographical in 
      the p2p sip network, the malicious code can affect a larger scope, 
      and this will cause great damage for the system. 
























 
 
Judy                  Expires January 9, 2010                [Page 11] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

5. Security Requirements 

   With the security threats analysis, we can find out what the security 
   requirements the P2P SIP system really needs. 

5.1. Trust Model 

   The section 4.1 analyzes the problems and influences in situation 
   that P2P SIP system lack of trust. It MUST need to create a trust 
   model in the light of the trust architecture in the real world. 

   P2P SIP network will benefit from trust incentive system. There are 
   some reasons described as following: 

   o Trust mechanism can be an effective mechanism to measure the 
      security status of nodes. 

   o Security domain can be made and updated dynamically with trust 
      mechanism. P2P SIP network can be divided into some security 
      domains depend on the corresponding trust levels. The unique 
      security policy can be made for a security domain as nodes in the 
      same domain have the same trust level. Moreover, if the network 
      changes, the trust level of related nodes will change as well. It 
      will cause the security domain update. 

   o Trust mechanism can effectively inhibit malicious motivation for 
      the attacking. Each node can get information about another node's 
      trust information so it can judge the possibility of launching 
      malicious attack the node is. With the information, it can 
      determine whether the node should be connected. So trust mechanism 
      can encourage nodes to reduce the malicious motivation and actions 
      and enhance network security level. 

   For example, for the different kinds of nodes, it should set three 
   kinds of measure function for the three kinds of nodes as following: 

   o Enrollment server is a key node in the network for authentication 
      and authorization. It will be provided the highest level security 
      protection and suffer lest attack. So initial trust level of 
      enrollment server can be set highest level trusted. But if 
      malicious action is detected with specific enrollment server, its 
      trust level should be reduced rapidly and greatly to limit the 
      influence of its malicious attack. 




 
 
Judy                  Expires January 12, 2010               [Page 12] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   o Peer is the basic node to construct P2P SIP network. Peers have 
      the most complex security requirements. Each peer should be 
      initiated with middle level of trust and adjust trust level by 
      peer information such as link information, peer action, activity 
      ability or any other information. 

   o Client is the end of P2P SIP network. It was controlled by end 
      user and can enter and exit network at any time. So the initiating 
      trust level should be low. It can be updated by client behaviors 
      and information as client actions, resource occupancy and any 
      others. 

5.2. Authentication Infrastructure 

   In the traditional network, a client who wants to use service from 
   server must be authenticated and authorized by related server. But 
   P2P SIP system is a distributed network. This network has no 
   centralized nodes. Each peer can provide services for other entities. 
   When a node sends service request to networks, but peer cannot do the 
   authentication process. It should be enrollment responsibility. As a 
   result, a special kind of nodes SHOULD be made for providing 
   authentication service for other entities. These nodes are enrollment 
   servers. 

   For this authentication mechanism, enrollment servers can be 
   organized as two options as following. 

5.2.1. Centralized Authentication Infrastructure 

   In P2P SIP network, a centralized authentication infrastructure MAY 
   be implemented. In this scenario, there is a super peer in P2P SIP 
   network, act as enrollment server. It SHOULD stores all enrollment 
   information about each node, either peer or client. Every node who 
   wants to join this network SHOULD be authenticated and authorized by 
   this server. If it is joining peer, it SHOULD make authentication 
   process with enrollment server directly. Or it SHOULD make 
   authentication process with proxy peer indirectly if not. 

5.2.2. Distributed Authentication Infrastructure 

   As P2P SIP system is a distributed network, a distributed 
   authentication infrastructure which will fit for the system better 
   MAY be implemented. As distributed authentication infrastructure is 
   set, there are two problems should be considered: 

   o The credentials storage on the distributed servers. 

 
 
Judy                  Expires January 12, 2010               [Page 13] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   o The procedure how a new visitor makes mutual authentication with 
      network. 

   For the first problem, the credential for all nodes can be divided 
   into some categories. After that, the credentials should be placed 
   into selected enrollment server by specific algorithm. The DHT 
   algorithm is preferred because it will benefit when a new visitor 
   find out where its credential is in authentication procedure. 

   For example, to deal with the mutual authentication, it should divide 
   base on whether the new visitor is client or not. 

   o If the new visitor is peer, it should find the nearest enrollment 
      server based on the algorithm like DHT and send authentication 
      request to the enrollment server. Enrollment server will search 
      peer's credential in local database after it received 
      authentication request. If peer's credential is not in the 
      database, server should get credential from other enrollment 
      servers and stores it temporarily. Then it will generate 
      authentication vector and make normal authentication procedure 
      between peer and enrollment server. If the credential is stored 
      temporarily in the enrollment server, it MUST be deleted after the 
      peer exits this network. 

   o If the new visitor is a client. It should send authentication 
      request to nearest enrollment server through the peer it is 
      directly connected. Enrollment server will generate authentication 
      vector and send it to peer. Peer on behalf of enrollment server 
      make authentication procedure with client. After the duplex 
      authentication between client and peer, it should send result to 
      enrollment server no matter it succeeded or failed. 

5.3. Protection against Malicious Code Spreading 

   In P2P SIP system every nodes are equal. Each peer has ability to 
   share and spread information it has. So if malicious code infects a 
   weak security peer, it will spread rapidly. For this reason, there 
   SHOULD be a mechanism or some technology to prevent and diminish 
   malicious code spreading. 

   Some protection policy can be defined as: 

   o The unnecessary port and application server should be closed in 
      each node to reduce the possibility of suffering malicious attack. 



 
 
Judy                  Expires January 12, 2010               [Page 14] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

   o The protection will benefit from the trust mechanism. It is 
      because the trust mechanism marks nodes with high attacking 
      possibility in low trust level so that few of nodes will connect 
      to the low trust level nodes. 

   Moreover, attacking source should be fast located and identified. The 
   earlier attacker was located, the less lost in the P2P system was 
   suffered. To achieve this goal, for example, some mechanisms can be 
   considered here. 

   o Undeniable mechanism. Undeniable mechanism forces each node in the 
      network to be responsible for its behavior. When the mechanism is 
      deployed, proofs of malicious attacking can be collected easily. 
      So the location and identification of attacker can be got fast and 
      exact based on these proofs. 

   o Responsibility Chaining. A responsibility chaining is used as an 
      attachment of the packets transferred in the network. It can 
      inform receiver where the packet is sent out and which node it has 
      passed. With information provided by this chaining, it is easy to 
      find out where and what identity the attacker is by tracing back 
      step by step. 

    






















 
 
Judy                  Expires January 12, 2010               [Page 15] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

6. Security Considerations 

   This memo considers the security concerns and security requirements 
   about P2P SIP system. So it would not introduce any additional 
   security problems. 









































 
 
Judy                  Expires January 12, 2010               [Page 16] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

7. IANA Considerations 

   There are no IANA considerations associated to this memo. 











































 
 
Judy                  Expires January 12, 2010               [Page 17] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

8. Conclusions 

   This memo describes variety of security threats in P2P SIP system 
   first. According these security threats, P2P SIP security 
   requirements is brought up. 









































 
 
Judy                  Expires January 12, 2010               [Page 18] 

Internet-Draft      P2PSIP Security Requirements             July 2009 
    

9. References 

9.1. Normative References 

   [1]  Bryan, D., Matthews, P., Shim, P., and D. Willis, "Concepts and 
         Terminology for Peer to Peer SIP", draft-ietf-p2psip-concepts-
         02.txt (work in progress), July 2008. 

   [2]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 
         A.,Peterson, J., Sparks, R., Handley, M., and E. Schooler, 
         "SIP:Session Initiation Protocol", RFC 3261, June 2002. 

   [3]  Matuszewski, M., Ekberg, J-E. and Laitinen, P., "Security 
         requirements in Peer-to-Peer Session Initiation Protocol", 
         draft-matuszewski-p2psip-security-requirements-04.txt
         (work-in-progress), November 2008. 

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate 
               Requirement Levels", BCP 14, RFC 2119, March 1997 

Author's Addresses 

   Judy Zhu 
   China Mobile 
   Unit 2, 28 Xuanwumenxi Ave, 
   Xuanwu District, 
   Beijing 100053, China 
      
   Email: zhuhongru@chinamobile.com 
    

   Minpeng Qi 
   China Mobile 
   Unit 2, 28 Xuanwumenxi Ave, 
   Xuanwu District, 
   Beijing 100053, China 
      
   Email: qiminpeng@chinamobile.com 
    








 
 
Judy                  Expires January 12, 2010               [Page 19]