Internet Engineering Task Force Maureen Stillman(editor) INTERNET DRAFT Ram Gopal Senthil Sengodan Nokia Erik Guttman Sun Microsystems Matt Holdrege Sonus Networks 15 September 2003 expires March 15, 2004 Threats Introduced by Rserpool and Requirements for Security in response to Threats Status of This Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026 [RFC2026]. 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. Abstract Rserpool is an architecture and protocols for the management and access to server pools supporting highly reliable applications and for client access mechanisms to a server pool. This Internet draft describes security threats to the Rserpool architecture and presents requirements for security to thwart these threats. Stillman, et al. [Page 1] Internet Draft Threats Introduced by Rserpool 15 September 2003 Contents Status of This Memo 1 Abstract 1 1. Introduction 3 1.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . 3 2. Threats 4 2.1 PE Registration/Deregistration flooding . . . . . . . . . 4 2.2 PE Registration/Deregistration flooding . . . . . . . . . 4 2.3 PE Registration/Deregistration spoofing . . . . . . . . . 4 2.4 PE Registration/Deregistration unauthorized . . . . . . . 5 2.5 Malicious ENRP server joins the group of legitimate ENRP servers . . . . . . . . . . . . . . . . . 5 2.6 Registration/deregistration with malicious ENRP servers . 5 2.7 Malicious ENRP Name Resolution .. . . . . . . . . . . . . 5 2.8 Malicious node performs a replay attack.. . . . . . . . . 6 2.9 Re-establishing PU-PE security during failover. . . . . . 6 2.10 Integrity . . . . . . . . . . . . . . . . . . . . . . . . 6 2.11 Data Confidentiality . . . . . . . . . . . . . . . . . . 6 2.12 ENRP Server Discovery . . . . . . . . . . . . . . . . . . 7 2.13 Flood of endpoint unreachable messages . . . . . . . . . 7 2.14 Flood of endpoint keep alive messages . . . . . . . . . . 7 3. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 8 7. Intellectual Property Statement . . . . . . . . . . . . . . . . 9 8. Author's addresses . . . . . . . . . . . . . . . . . . . . . . . 10 Stillman, et al. [Page 2] Internet Draft Threats Introduced by Rserpool 15 September 2003 1. Introduction RSERPOOL provides a session layer for robustness and performance. The session layer function may redirect communication transparently to upper layers. This alters the direct one-to-one association between communicating endpoints which typically exists between clients and services. In particular, secure operation of protocols often relies on assumptions at different layers regarding the identity of the communicating party and the continuity of the communication between endpoints. Further, the operation of RSERPOOL itself has security implications and risks. The session layer is organized and operates dynamically which imposes additional concerns for the overall security of the end-to-end application. This document explores the security implications of RSERPOOL, both due to its own functions and due to its being interposed between applications and transport interfaces. 1.1 Definitions This document uses the following terms: ENRP Endpoint Name Resolution Protocol: Within the operational scope of Rserpool, ENRP defines the procedures and message formats of a distributed fault-tolerant registry service for storing, bookkeeping, retrieving, and distributing pool operation and membership information. ASAP Aggregate Server Access Protocol: A session layer protocol which uses the Endpoint Name Resolution Protocol (ENRP) to provide a high availability name space. ASAP is responsible for the abstraction of the underlying transport technologies, load distribution management,fault management, as well as the presentation to the upper layer (i.e., the ASAP user) a unified primitive interface. Operation scope: The part of the network visible to pool users by a specific instance of the reliable server pooling protocols. Pool (or server pool): A collection of servers providing the same application functionality. Pool handle (or pool name): A logical pointer to a pool. Each server pool will be identifiable in the operation scope of the system by a unique pool handle or "name". ENRP namespace (or namespace): A cohesive structure of pool names and relations that may be queried by an internal or external agent. Stillman, et al. [Page 3] Internet Draft Threats Introduced by Rserpool 15 September 2003 Pool element (PE): A server entity that runs ASAP and has registered to a pool. Pool user (PU): A server pool user that runs ASAP. Note, a PU can also be a PE if it has registered itself to a pool. ENRP namespace server (or ENRP server): Entity which runs ENRP and is responsible for managing and maintaining the namespace within the operation scope. 2. Threats 2.1 PE Registration/Deregistration flooding Threat: A malicious node could send a stream of false registrations/deregistrations on behalf of non-existent PEs to ENRP servers at a very rapid rate and thereby create unnecessary state in an ENRP server. Effect: Corrupting the name server database and/or disabling the Rserpool discovery and naming function. Requirement: An ENRP server that receives a registration/deregistration should not create or update state information until it has authenticated the PE. 2.2 PE Registration/Deregistration flooding Threat: A malicious node or PE could send a stream of registrations/deregistrations that are unauthorized to register/deregister - to ENRP servers at a very rapid rate and thereby create unnecessary state in an ENRP server. Effect: Corrupting the name server database and/or disabling the Rserpool discovery and naming function. Requirement: An ENRP server that receives a registration/deregistration should not create or update state information until the authorization of the registering/de-registering entity is verified. 2.3 PE Registration/Deregistration spoofing Threat: A malicious node could send false registrations/deregistrations to ENRP servers concerning a legitimate PE thereby creating false state information in the ENRP servers. Effect: Misinformation in the ENRP server concerning a PE would get propagated to other ENRP servers thereby corrupting the ENRP database. Requirement: An ENRP server that receives a registration/deregistration should not create or update state information until it has authenticated the PE. Stillman, et al. [Page 4] Internet Draft Threats Introduced by Rserpool 15 September 2003 2.4 PE Registration/Deregistration unauthorized Threat: A PE who is not authorized to join a pool could send registrations/deregistrations to ENRP servers thereby creating false state information in the ENRP servers. Effect: Misinformation in the ENRP server concerning a PE would get propagated to other ENRP servers thereby corrupting the ENRP database. Requirement: An ENRP server that receives a registration/deregistration should not create or update state information until it has authorized the requesting entity. 2.5 Malicious ENRP server joins the group of legitimate ENRP servers Threat: Malicious ENRP server joins the group of legitimate ENRP servers with the intent of propagating inaccurate updates to corrupt the ENRP database. Effect: Inconsistent ENRP database state. Requirement: Mutual authentication of ENRP servers. 2.6 Registration/deregistration with malicious ENRP server Threat: A PE unknowingly registers/deregisters with malicious ENRP server. Effect: Registration might not be properly processed or ignored. Requirement: PE needs to authenticate the ENRP server. 2.7 Malicious ENRP Name Resolution Threat: The ASAP protocol receives a name resolution response from an ENRP server, but the ENRP server is malicious and returns random IP addresses or an inaccurate list in response to the pool handle. Effect: PU application communicates with the wrong PE or is unable to locate the PE since the response is incorrect in saying that a PE with that name did not exist. Requirement: ASAP needs to authenticate the ENRP server. Stillman, et al. [Page 5] Internet Draft Threats Introduced by Rserpool 15 September 2003 2.8 Malicious node performs a replay attack Threat: A malicious node could replay the entire message previously sent by a legitimate entity. This could create false/unnecessary state in the ENRP servers when the replay is for registration/de-registration or update. Effect: False/extra state is maintained by ENRP servers Requirement: Care should be taken to prevent replay attacks. 2.9 Re-establishing PU-PE security during failover Threat: PU fails over from PE A to PE B. In the case that the PU had a trusted relationship with PE A, then the PU will likely not have the same relationship established with PE B. Effect: If there was a trust relationship involving security context between PU and PE A, the equivalent trust relationship will not exist between PU and PE B. This will violate security policy. Requirement: Either notify the application when fail over occurs so the application can take appropriate action to establish a trusted relationship with PE B OR reestablish the security context transparently. 2.10 Integrity Threats: a) ENRP response to name resolution is corrupted during transmission b) ENRP peer messages are corrupted during transmission c) PE sends update for values and that information is corrupted during transmission Effect: ASAP receives corrupt information for pool handle resolution which the PU believes to be accurate. Requirement: Integrity mechanism needed. 2.11 Data Confidentiality Threat: An eavesdropper capable of snooping on fields within messages in transit, may be able to garner information such as topology/location/IP addresses etc. that may not be desirable to divulge. Effect: Information that an administrator does not wish to divulge are divulged. Requirement: Provision for Data confidentiality service. Stillman, et al. [Page 6] Internet Draft Threats Introduced by Rserpool 15 September 2003 2.12 ENRP Server Discovery Threat A thwarting successful discovery: When a PE wishes to register with an ENRP server, it needs to discover an ENRP server. An attacker could thwart the successful discovery of ENRP server(s) thereby inducing the PE to believe that no ENRP server is available. For instance, the attacker could reduce the returned set of ENRP servers to null or a small set of inactive ENRP servers. Threat B: A similar thwarting scenario also applies when an ENRP server or ASAP on behalf of a PU needs to discover ENRP servers. Threat C: Spoofing successful discovery: An attacker could spoof the discovery by claiming to be a legitimate ENRP server. When a PE wishes to register, it finds the spoofed ENRP server. Threat D: A similar spoofing scenario also applies when an ENRP server or ASAP on behalf of a PU needs to discover ENRP servers. Effect A: A PE that could have been in an application server pool does not become part of a pool. The PE does not complete discovery operation. This is a DOS attack. Effect B: An ENRP server that could have been in an ENRP server pool does not become part of a pool. A PU is unable to utilize services of ENRP servers. Effect C,D: This malicious ENRP would either misrepresent, ignore or otherwise hide or distort information about the PE to subvert RSERPOOL operation. Requirement: Discovery phase needs to be authenticated. 2.13 Flood of endpoint unreachable messages from the PU to the ENRP server These messages are sent by ASAP to the ENRP server when it is unable to contact a PE. There is the potential that a PU could flood the ENRP server intentionally or unintentionally with these messages. Effect: DOS attack on the ENRP server Requirement: Need to limit the number of endpoint unreachable messages sent to the ENRP server from the PU. 2.14 Flood of endpoint keep alive messages from the ENRP server to a PE These messages would be sent in response to a flood of endpoint unreachable messages from the PUs to the ENRP server. Effect: Unintentional DOS attack on the PE Requirement: ENRP must limit the frequency of keep alive messages to a given PE to prevent overwhelming the PE. Stillman, et al. [Page 7] Internet Draft Threats Introduced by Rserpool 15 September 2003 3. Security Considerations for Rserpool This informational document characterizes potential security threats targeting the Rserpool architecture. 4. IANA Considerations This document introduces no additional considerations for IANA. 5. References Normative References: [Rserarch] M. Tuexen, et. al., "Architecture for Reliable Server Pooling", draft-ietf-reserpool-arch-06.txt, June, 2003, work in progress. Informative References: [RFC2026] S. Bradner, "The Internet Standards Process -- Revision 3", RFC 2026, October 1996. [RFC3365] RFC 3365, Strong Security Requirements for IETF Standard Protocols, August, 2002. 6. Acknowledgements Thanks to the Rserpool security design team and others that provided valuable comments: Lyndon Ong, Randy Stewart, Melinda Shore, Qiaobing Xie, Michael Tuexen, Aron Silverton, Sohrab Modi, Javier Pastor-Balbas, Xingang Guo, M. Piramanayagam, Bernard Aboba and Dhooria Manoj. Funding for the RFC Editor function is currently provided by the Internet Society. Stillman, et al. [Page 8] Internet Draft Threats Introduced by Rserpool 15 September 2003 7. Intellectual Property Statement The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Stillman, et al. [Page 9] Internet Draft Threats Introduced by Rserpool 15 September 2003 expires 15 March 2004 8. Author's Addresses Ram Gopal Nokia Research Center 5 Wayside Road Burlington, MA 01803 USA email: ram.gopal@nokia.com Erik Guttman Sun Microsystems Eichhoelzelstr. 7 74915 Waibstadt Germany Email: Erik.Guttman@sun.com Matt Holdrege Sonus Networks 223 Ximeno Avenue Long Beach, CA 90803 matt@sonusnet.com Senthil Sengodan Nokia Research Center 5 Wayside Road Burlington, MA 01803 USA email: Senthil.sengodan@nokia.com Maureen Stillman Nokia 35 Woodcrest Ave. Ithaca, NY 14850 USA email: maureen.stillman@nokia.com Stillman, et al. [Page 10]