idnits 2.17.1 draft-ietf-rserpool-threats-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 9 longer pages, the longest (page 2) being 60 lines == It seems as if not all pages are separated by form feeds - found 0 form feeds but 10 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (March 15, 2004) is 7341 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'Rserarch' is defined on line 338, but no explicit reference was found in the text == Unused Reference: 'RFC3365' is defined on line 347, but no explicit reference was found in the text -- No information found for draft-ietf-reserpool-arch - is the name correct? -- Possible downref: Normative reference to a draft: ref. 'Rserarch' Summary: 3 errors (**), 0 flaws (~~), 6 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Internet Engineering Task Force Maureen Stillman(editor) 2 INTERNET DRAFT Ram Gopal 3 Senthil Sengodan 4 Nokia 5 Erik Guttman 6 Sun Microsystems 7 Matt Holdrege 8 Sonus Networks 9 15 September 2003 10 expires March 15, 2004 12 Threats Introduced by Rserpool and Requirements for Security 13 in response to Threats 14 16 Status of This Memo 18 This document is an Internet-Draft and is in full conformance with 19 all provisions of Section 10 of RFC2026 [RFC2026]. Internet-Drafts 20 are working documents of the Internet Engineering Task Force (IETF), 21 its areas, and its working groups. Note that other groups may also 22 distribute working documents as Internet-Drafts. 24 Internet-Drafts are draft documents valid for a maximum of six months 25 and may be updated, replaced, or obsoleted by other documents at 26 any time. It is inappropriate to use Internet-Drafts as reference 27 material or to cite them other than as "work in progress." 29 The list of current Internet-Drafts can be accessed at: 30 http://www.ietf.org/ietf/1id-abstracts.txt 31 The list of Internet-Draft Shadow Directories can be accessed at: 32 http://www.ietf.org/shadow.html. 34 Abstract 36 Rserpool is an architecture and protocols for the management and 37 access to server pools supporting highly reliable applications 38 and for client access mechanisms to a server pool. This Internet 39 draft describes security threats to the Rserpool architecture and 40 presents requirements for security to thwart these threats. 42 Contents 44 Status of This Memo 1 45 Abstract 1 46 1. Introduction 3 47 1.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . 3 48 2. Threats 4 49 2.1 PE Registration/Deregistration flooding . . . . . . . . . 4 50 2.2 PE Registration/Deregistration flooding . . . . . . . . . 4 51 2.3 PE Registration/Deregistration spoofing . . . . . . . . . 4 52 2.4 PE Registration/Deregistration unauthorized . . . . . . . 5 53 2.5 Malicious ENRP server joins the group of legitimate ENRP 54 servers . . . . . . . . . . . . . . . . . 5 55 2.6 Registration/deregistration with malicious ENRP servers . 5 56 2.7 Malicious ENRP Name Resolution .. . . . . . . . . . . . . 5 57 2.8 Malicious node performs a replay attack.. . . . . . . . . 6 58 2.9 Re-establishing PU-PE security during failover. . . . . . 6 59 2.10 Integrity . . . . . . . . . . . . . . . . . . . . . . . . 6 60 2.11 Data Confidentiality . . . . . . . . . . . . . . . . . . 6 61 2.12 ENRP Server Discovery . . . . . . . . . . . . . . . . . . 7 62 2.13 Flood of endpoint unreachable messages . . . . . . . . . 7 63 2.14 Flood of endpoint keep alive messages . . . . . . . . . . 7 64 3. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 65 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 66 5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 67 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 8 68 7. Intellectual Property Statement . . . . . . . . . . . . . . . . 9 69 8. Author's addresses . . . . . . . . . . . . . . . . . . . . . . . 10 70 1. Introduction 72 RSERPOOL provides a session layer for robustness and performance. The 73 session layer function may redirect communication transparently to 74 upper layers. This alters the direct one-to-one association between 75 communicating endpoints which typically exists between clients and 76 services. In particular, secure operation of protocols often relies 77 on assumptions at different layers regarding the identity of the 78 communicating party and the continuity of the communication between 79 endpoints. Further, the operation of RSERPOOL itself has security 80 implications and risks. The session layer is organized and operates 81 dynamically which imposes additional concerns for the overall security 82 of the end-to-end application. This document explores the security 83 implications of RSERPOOL, both due to its own functions and due to its 84 being interposed between applications and transport interfaces. 86 1.1 Definitions 88 This document uses the following terms: 90 ENRP Endpoint Name Resolution Protocol: 91 Within the operational scope of Rserpool, ENRP defines the 92 procedures and message formats of a distributed fault-tolerant 93 registry service for storing, bookkeeping, retrieving, and 94 distributing pool operation and membership information. 96 ASAP Aggregate Server Access Protocol: 97 A session layer protocol which uses the Endpoint Name 98 Resolution Protocol (ENRP) to provide a high 99 availability name space. ASAP is responsible for the 100 abstraction of the underlying transport technologies, load 101 distribution management,fault management, as well as the 102 presentation to the upper layer (i.e., the ASAP user) a 103 unified primitive interface. 105 Operation scope: 106 The part of the network visible to pool users by a specific 107 instance of the reliable server pooling protocols. 109 Pool (or server pool): 110 A collection of servers providing the same application 111 functionality. 113 Pool handle (or pool name): 114 A logical pointer to a pool. Each server pool will be 115 identifiable in the operation scope of the system by a unique 116 pool handle or "name". 118 ENRP namespace (or namespace): 119 A cohesive structure of pool names and relations that may be 120 queried by an internal or external agent. 122 Pool element (PE): 123 A server entity that runs ASAP and has registered to a pool. 125 Pool user (PU): 126 A server pool user that runs ASAP. Note, a PU can also be a 127 PE if it has registered itself to a pool. 129 ENRP namespace server (or ENRP server): 130 Entity which runs ENRP and is responsible for managing and 131 maintaining the namespace within the operation scope. 133 2. Threats 135 2.1 PE Registration/Deregistration flooding 137 Threat: A malicious node could send a stream of false 138 registrations/deregistrations on behalf of non-existent PEs to ENRP 139 servers at a very rapid rate and thereby create unnecessary state in an 140 ENRP server. 142 Effect: Corrupting the name server database and/or disabling the 143 Rserpool discovery and naming function. 145 Requirement: An ENRP server that receives a registration/deregistration 146 should not create or update state information until it has authenticated 147 the PE. 149 2.2 PE Registration/Deregistration flooding 151 Threat: A malicious node or PE could send a stream of 152 registrations/deregistrations that are unauthorized to 153 register/deregister - to ENRP servers at a very rapid rate and thereby 154 create unnecessary state in an ENRP server. 156 Effect: Corrupting the name server database and/or disabling the 157 Rserpool discovery and naming function. 159 Requirement: An ENRP server that receives a registration/deregistration 160 should not create or update state information until the authorization of 161 the registering/de-registering entity is verified. 163 2.3 PE Registration/Deregistration spoofing 165 Threat: A malicious node could send false registrations/deregistrations 166 to ENRP servers concerning a legitimate PE thereby creating false state 167 information in the ENRP servers. 169 Effect: Misinformation in the ENRP server concerning a PE would get 170 propagated to other ENRP servers thereby corrupting the ENRP database. 172 Requirement: An ENRP server that receives a registration/deregistration 173 should not create or update state information until it has authenticated 174 the PE. 176 2.4 PE Registration/Deregistration unauthorized 178 Threat: A PE who is not authorized to join a pool could send 179 registrations/deregistrations to ENRP servers thereby creating false 180 state information in the ENRP servers. 182 Effect: Misinformation in the ENRP server concerning a PE would get 183 propagated to other ENRP servers thereby corrupting the ENRP database. 185 Requirement: An ENRP server that receives a registration/deregistration 186 should not create or update state information until it has authorized 187 the requesting entity. 189 2.5 Malicious ENRP server joins the group of legitimate ENRP servers 191 Threat: Malicious ENRP server joins the group of legitimate ENRP servers 192 with the intent of propagating inaccurate updates to corrupt the ENRP 193 database. 195 Effect: Inconsistent ENRP database state. 197 Requirement: Mutual authentication of ENRP servers. 199 2.6 Registration/deregistration with malicious ENRP server 201 Threat: A PE unknowingly registers/deregisters with malicious ENRP 202 server. 204 Effect: Registration might not be properly processed or ignored. 206 Requirement: PE needs to authenticate the ENRP server. 208 2.7 Malicious ENRP Name Resolution 210 Threat: The ASAP protocol receives a name resolution response from an 211 ENRP server, but the ENRP server is malicious and returns random IP 212 addresses or an inaccurate list in response to the pool handle. 214 Effect: PU application communicates with the wrong PE or is unable to 215 locate the PE since the response is incorrect in saying that a PE with 216 that name did not exist. 218 Requirement: ASAP needs to authenticate the ENRP server. 220 2.8 Malicious node performs a replay attack 222 Threat: A malicious node could replay the entire message previously sent 223 by a legitimate entity. This could create false/unnecessary state in the 224 ENRP servers when the replay is for registration/de-registration or 225 update. 227 Effect: False/extra state is maintained by ENRP servers 229 Requirement: Care should be taken to prevent replay attacks. 231 2.9 Re-establishing PU-PE security during failover 233 Threat: PU fails over from PE A to PE B. In the case that the PU had a 234 trusted relationship with PE A, then the PU will likely not have the 235 same relationship established with PE B. 237 Effect: If there was a trust relationship involving security context 238 between PU and PE A, the equivalent trust relationship will not exist 239 between PU and PE B. This will violate security policy. 241 Requirement: Either notify the application when fail over occurs so the 242 application can take appropriate action to establish a trusted 243 relationship with PE B OR reestablish the security context 244 transparently. 246 2.10 Integrity 248 Threats: 249 a) ENRP response to name resolution is corrupted during transmission 250 b) ENRP peer messages are corrupted during transmission 251 c) PE sends update for values and that information is corrupted during 252 transmission 254 Effect: ASAP receives corrupt information for pool handle resolution 255 which the PU believes to be accurate. 257 Requirement: Integrity mechanism needed. 259 2.11 Data Confidentiality 261 Threat: An eavesdropper capable of snooping on fields within messages in 262 transit, may be able to garner information such as topology/location/IP 263 addresses etc. that may not be desirable to divulge. 265 Effect: Information that an administrator does not wish to divulge are 266 divulged. 268 Requirement: Provision for Data confidentiality service. 270 2.12 ENRP Server Discovery 272 Threat A thwarting successful discovery: When a PE wishes to register 273 with an ENRP server, it needs to discover an ENRP server. An attacker 274 could thwart the successful discovery of ENRP server(s) thereby inducing 275 the PE to believe that no ENRP server is available. For instance, the 276 attacker could reduce the returned set of ENRP servers to null or a 277 small set of inactive ENRP servers. 279 Threat B: A similar thwarting scenario also applies when an ENRP server 280 or ASAP on behalf of a PU needs to discover ENRP servers. 282 Threat C: Spoofing successful discovery: An attacker could spoof the 283 discovery by claiming to be a legitimate ENRP server. When a PE wishes 284 to register, it finds the spoofed ENRP server. 286 Threat D: A similar spoofing scenario also applies when an ENRP server 287 or ASAP on behalf of a PU needs to discover ENRP servers. 289 Effect A: A PE that could have been in an application server pool does 290 not become part of a pool. The PE does not complete discovery operation. 291 This is a DOS attack. 293 Effect B: An ENRP server that could have been in an ENRP server pool 294 does not become part of a pool. A PU is unable to utilize services of 295 ENRP servers. 297 Effect C,D: This malicious ENRP would either misrepresent, ignore 298 or otherwise hide or distort information about the PE to subvert 299 RSERPOOL operation. 301 Requirement: Discovery phase needs to be authenticated. 303 2.13 Flood of endpoint unreachable messages from the PU to the ENRP 304 server 306 These messages are sent by ASAP to the ENRP server when it is unable to 307 contact a PE. There is the potential that a PU could flood the ENRP 308 server intentionally or unintentionally with these messages. 310 Effect: DOS attack on the ENRP server 312 Requirement: Need to limit the number of endpoint unreachable messages 313 sent to the ENRP server from the PU. 315 2.14 Flood of endpoint keep alive messages from the ENRP server to a PE 317 These messages would be sent in response to a flood of endpoint 318 unreachable messages from the PUs to the ENRP server. 320 Effect: Unintentional DOS attack on the PE 322 Requirement: ENRP must limit the frequency of keep alive messages to a 323 given PE to prevent overwhelming the PE. 325 3. Security Considerations for Rserpool 327 This informational document characterizes potential security threats 328 targeting the Rserpool architecture. 330 4. IANA Considerations 332 This document introduces no additional considerations for IANA. 334 5. References 336 Normative References: 338 [Rserarch] M. Tuexen, et. al., "Architecture for Reliable Server 339 Pooling", draft-ietf-reserpool-arch-06.txt, June, 2003, work in 340 progress. 342 Informative References: 344 [RFC2026] S. Bradner, "The Internet Standards Process -- Revision 3", 345 RFC 2026, October 1996. 347 [RFC3365] RFC 3365, Strong Security Requirements for IETF Standard 348 Protocols, August, 2002. 350 6. Acknowledgements 352 Thanks to the Rserpool security design team and others that provided 353 valuable comments: Lyndon Ong, Randy Stewart, Melinda Shore, Qiaobing 354 Xie, Michael Tuexen, Aron Silverton, Sohrab Modi, Javier Pastor-Balbas, 355 Xingang Guo, M. Piramanayagam, Bernard Aboba and Dhooria Manoj. 357 Funding for the RFC Editor function is currently provided by the 358 Internet Society. 360 7. Intellectual Property Statement 362 The IETF takes no position regarding the validity or scope of any 363 intellectual property or other rights that might be claimed to 364 pertain to the implementation or use of the technology described in 365 this document or the extent to which any license under such rights 366 might or might not be available; neither does it represent that it 367 has made any effort to identify any such rights. Information on the 368 IETF's procedures with respect to rights in standards-track and 369 standards-related documentation can be found in BCP-11. Copies of 370 claims of rights made available for publication and any assurances of 371 licenses to be made available, or the result of an attempt made to 372 obtain a general license or permission for the use of such 373 proprietary rights by implementors or users of this specification can 374 be obtained from the IETF Secretariat. 376 The IETF invites any interested party to bring to its attention any 377 copyrights, patents or patent applications, or other proprietary 378 rights which may cover technology that may be required to practice 379 this standard. Please address the information to the IETF Executive 380 Director. 382 Full Copyright Statement 384 Copyright (C) The Internet Society (2003). All Rights Reserved. 386 This document and translations of it may be copied and furnished to 387 others, and derivative works that comment on or otherwise explain it 388 or assist in its implementation may be prepared, copied, published 389 and distributed, in whole or in part, without restriction of any 390 kind, provided that the above copyright notice and this paragraph are 391 included on all such copies and derivative works. However, this 392 document itself may not be modified in any way, such as by removing 393 the copyright notice or references to the Internet Society or other 394 Internet organizations, except as needed for the purpose of 395 developing Internet standards in which case the procedures for 396 copyrights defined in the Internet Standards process must be 397 followed, or as required to translate it into languages other than 398 English. 400 The limited permissions granted above are perpetual and will not be 401 revoked by the Internet Society or its successors or assignees. 403 This document and the information contained herein is provided on an 404 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 405 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 406 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 407 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 408 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 410 expires 15 March 2004 412 8. Author's Addresses 414 Ram Gopal 415 Nokia Research Center 416 5 Wayside Road 417 Burlington, MA 01803 418 USA 419 email: ram.gopal@nokia.com 421 Erik Guttman 422 Sun Microsystems 423 Eichhoelzelstr. 7 424 74915 Waibstadt 425 Germany 426 Email: Erik.Guttman@sun.com 428 Matt Holdrege 429 Sonus Networks 430 223 Ximeno Avenue 431 Long Beach, CA 90803 432 matt@sonusnet.com 434 Senthil Sengodan 435 Nokia Research Center 436 5 Wayside Road 437 Burlington, MA 01803 438 USA 439 email: Senthil.sengodan@nokia.com 441 Maureen Stillman 442 Nokia 443 35 Woodcrest Ave. 444 Ithaca, NY 14850 445 USA 446 email: maureen.stillman@nokia.com