The present invention relates to the network security techniques and, more particularly, to methods and apparatus for ensuring end-to-end security in heterogeneous networks.
The Internet Protocol (IP) Multimedia Subsystem (IMS) provides for access-independent advanced multimedia services in a distributed architecture. The session control mechanism of IMS is based on the Session Initiation Protocol (SIP) and provides a flexible, distributed network architecture for deployment of advanced consumer and business services. It is believed that IMS will be the leading technology for delivering evolving Voice over IP (VoIP) services.
It has been recognized that IMS service providers must deploy secure reliable services in order to attract and retain customers. Since IMS supports VoIP services, IMS must address confidentiality of conversations, integrity of communications, end user privacy and the availability of the advanced services that IMS can deliver. Some key security requirements for service providers include hardened network elements and management systems, peer entity and data origin authentication, message integrity, confidentiality, privacy of end user identification, scalable key management, and standards compliance. In many cases, message authentication and integrity will be more important than confidentiality in order to protect the network from fraud and denial of service (DoS) attacks.
The IMS security standards are driven by the 3rd Generation Partnership Project (3GPP) and the 3rd Generation Partnership Project 2 (3GPP2). See, e.g., 3GPP TS 33.203 v5.8.0, “Access Security for IP-Based Services,” Release 5; and 3GPP TS 33.210 v5.5.0, “Network Domain Security; IP Network Layer Security,” Release 5, each incorporated by reference herein. Through such technical specifications, these bodies define and specify how an IMS system is to operate and behave.
Access security is typically concerned with mutual authentication of the user and network equipment and securing the first hop signaling. Securing the first hop may be achieved, for example, through the Secure SIP (SIPS) protocol. Currently, users wishing a secure end-to-end communications path must use either end-to-end cryptographic protection, which may be difficult or expensive to achieve in some situations, or request hop-by-hop protection with the hope that each intermediary node makes the same request to each subsequent node.
A significant problem with hop-by-hop protection, however, is the difficulty in knowing at one endpoint how well the protection extends to the far endpoint. Existing standards provide a mechanism for indicating that each hop of the signaling path is supposed to use Transport Layer Security (TLS) or the call should not be admitted. For example, a call setup request may employ the prefix “sips” (Secure SIP) when identifying the called party, as an indication that hop-by-hop protection is desired to the called party. This allows the user to declare and observe the security level. In a world of possibly untrusted SIP proxies along the end-to-end path, vendors that fail to fully and correctly implement the standard, or the use of unauthenticated TLS, such a mechanism may not provide adequate assurance.
A need therefore exists for improved methods and apparatus for end-to-end security in heterogeneous networks. A further need exists for hop-by-hop protection techniques that ensure that each hop of a signaling path is satisfying one or more predefined security criteria.
Generally, methods and apparatus are provided for end-to-end security in heterogeneous networks. According to one aspect of the invention, hop-by-hop protection techniques ensure that each hop of a signaling path is satisfying one or more predefined security criteria. An end-to-end path is secured at each node by identifying a next hop in the end-to-end path; determining, in response to a received call setup request, if a vendor associated with the next hop in the end-to-end path has satisfied one or more predefined security criteria; and routing the call to the next hop if the vendor has satisfied the one or more predefined criteria.
A look-up table can optionally be used to determine if a vendor has satisfied the one or more predefined security criteria. The look-up table can identify one or more of: (i) vendors that have achieved a predefined security rating; (ii) members in a predefined consortium or business group; and (iii) signatories to a predefined contract or technical specification.
In one implementation, the call is routed to the next hop only if the vendor has satisfied the one or more predefined criteria. In a further variation, the call is routed even if the next hop has not satisfied the one or more predefined criteria, but an indication of a compromised security is signaled to a caller associated with the call.
A more complete understanding of the present invention, as well as further features and advantages of the present invention, will be obtained by reference to the following detailed description and drawings.
The present invention provides improved methods and apparatus for end-to-end security in a heterogeneous network. According to one aspect of the invention, hop-by-hop protection techniques are provided that ensure that each hop in an end-to-end path is satisfying one or more predefined security criteria. A given hop in an end-to-end path will not forward the call to a next hop, unless the next hop has satisfied the one or more predefined security criteria. The determination of whether the next hop satisfies the one or more predefined security criteria may be based on a predefined security rating of the vendor associated with the hop, membership of the vendor in a predefined consortium or business group, or being a signatory to a predefined contract or technical specification. It is noted that the techniques of the present invention can be employed to protect both the signaling and media information, as would be apparent to a person of ordinary skill in the art.
For a more detailed discussion of call routing and call establishment techniques, see, for example, J. Rosenberg et al., “SIP: Session Initiation Protocol”, RFC 3261, June 2002, incorporated by reference herein.
The caller can provide a request for hop-by-hop protection. For example, a call setup request may employ the prefix “sips” (Secure SIP) when identifying the called party, as an indication that hop-by-hop protection is desired to the called party. The caller communications device 110 can be authenticated to the first hop (the SIP proxy 120 in the caller visited network), for example, using the AKA protocol. This authentication can be performed, for example, in accordance with TLS using the call session control function (CSCF) of the SIP Proxy 120. See, e.g., 3GPP TS 33.902 Annex B, “Formal Analysis of 3G Authentication and Key Agreement Protocol,” incorporated by reference herein.
As indicated above, the present invention provides hop-by-hop protection techniques to ensure that each hop in an end-to-end path is satisfying one or more predefined security criteria. As discussed below in conjunction with
The secure vendor database 200 may be populated, for example, with a list of vendors that have achieved a predefined security rating, are members in a predefined consortium or business group, or are signatories to a predefined contract or technical specification. [ANY MORE?] In this manner, the secure vendor database 200 identifies a subset of the full network environment 100 that can reliably carry the transitive trust. A secure path is created in accordance with the present invention if and only if the path remains within the trusted subset.
As shown in
A test is performed during step 330 to determine if the next hop is identified in the secure vendor database 200. If it is determined during step 330 that the next hop is identified in the secure vendor database 200, then the call is routed to the next hop during step 340 using SIPS. It is noted that upon receipt of the call, the next hop (and each subsequent hop) will itself implement the hop-by-hop security process 300 to maintain the security in the end-to-end path.
If, however, it is determined during step 330 that the next hop is not identified in the secure vendor database 200, then the call (i) can be dropped, or (ii) routed to the next hop, along with signaling back to the caller indicating the compromised security during step 350. In this manner, the exemplary embodiment provides a “best effort, but no promises” level of security when the desired hop-by-hop security cannot be ensured.
It is noted that under existing network security standards, the final hop need not be performed in accordance with SIPS. In other words, the final hop is allowed to have sufficient security to satisfy the called party. In addition, if the next hop is a SIP Proxy in the same secure environment as the current hop, such as physically in the same hardware cabinet, then a secure SIPS connection would likewise not be required between the two hops.
System and Article of Manufacture Details
As is known in the art, the methods and apparatus discussed herein may be distributed as an article of manufacture that itself comprises a computer readable medium having computer readable code means embodied thereon. The computer readable program code means is operable, in conjunction with a computer system, to carry out all or some of the steps to perform the methods or create the apparatuses discussed herein. The computer readable medium may be a recordable medium (e.g., floppy disks, hard drives, compact disks, or memory cards) or may be a transmission medium (e.g., a network comprising fiber-optics, the world-wide web, cables, or a wireless channel using time-division multiple access, code-division multiple access, or other radio-frequency channel). Any medium known or developed that can store information suitable for use with a computer system may be used. The computer-readable code means is any mechanism for allowing a computer to read instructions and data, such as magnetic variations on a magnetic media or height variations on the surface of a compact disk.
The computer systems and servers described herein each contain a memory that will configure associated processors to implement the methods, steps, and functions disclosed herein. The memories could be distributed or local and the processors could be distributed or singular. The memories could be implemented as an electrical, magnetic or optical memory, or any combination of these or other types of storage devices. Moreover, the term “memory” should be construed broadly enough to encompass any information able to be read from or written to an address in the addressable space accessed by an associated processor. With this definition, information on a network is still within a memory because the associated processor can retrieve the information from the network.
It is to be understood that the embodiments and variations shown and described herein are merely illustrative of the principles of this invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention.