draft-ietf-rserpool-threats-11.txt   draft-ietf-rserpool-threats-12.txt 
Network Working Group M. Stillman, Ed. Network Working Group M. Stillman, Ed.
Internet-Draft Nokia Internet-Draft Nokia
Intended status: Informational R. Gopal Intended status: Informational R. Gopal
Expires: October 27, 2008 Nokia Siemens Networks Expires: November 7, 2008 Nokia Siemens Networks
E. Guttman E. Guttman
Sun Microsystems Sun Microsystems
M. Holdrege M. Holdrege
Strix Systems Strix Systems
S. Sengodan S. Sengodan
Nokia Siemans Networks Nokia Siemans Networks
April 25, 2008 May 6, 2008
Threats Introduced by RSerPool and Requirements for Security in Threats Introduced by RSerPool and Requirements for Security in Response
Response to Threats to Threats
draft-ietf-rserpool-threats-11.txt draft-ietf-rserpool-threats-12.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 42 skipping to change at page 1, line 42
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on October 27, 2008. This Internet-Draft will expire on November 7, 2008.
Abstract Abstract
RSerPool is an architecture and set of protocols for the management RSerPool is an architecture and set of protocols for the management
and access to server pools supporting highly reliable applications and access to server pools supporting highly reliable applications
and for client access mechanisms to a server pool. This Internet and for client access mechanisms to a server pool. This Internet
draft describes security threats to the Rserpool architecture and draft describes security threats to the RSerPool architecture and
presents requirements for security to thwart these threats. presents requirements for security to thwart these threats.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Definitions . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Definitions . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . 4 1.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . 4
2. Threats . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Threats . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1. PE Registration/Deregistration flooding -- 2.1. PE Registration/Deregistration flooding --
non-existent PE . . . . . . . . . . . . . . . . . . . . . 4 non-existent PE . . . . . . . . . . . . . . . . . . . . . 4
2.2. PE Registration/Deregistration flooding -- 2.2. PE Registration/Deregistration flooding --
unauthorized PE . . . . . . . . . . . . . . . . . . . . . 5 unauthorized PE . . . . . . . . . . . . . . . . . . . . . 5
2.3. PE Registration/Deregistration spoofing . . . . . . . . . 5 2.3. PE Registration/Deregistration spoofing . . . . . . . . . 5
2.4. PE Registration/Deregistration unauthorized . . . . . . . 6 2.4. PE Registration/Deregistration unauthorized . . . . . . . 6
2.5. Malicious ENRP server joins the group of legitimate 2.5. Malicious ENRP server joins the group of legitimate
ENRP servers . . . . . . . . . . . . . . . . . . . . . . . 6 ENRP servers . . . . . . . . . . . . . . . . . . . . . . . 6
2.6. Registration/deregistration with malicious ENRP server . . 7 2.6. Registration/deregistration with malicious ENRP server . . 7
2.7. Malicious ENRP Handlespace Resolution . . . . . . . . . . 7 2.7. Malicious ENRP Handlespace Resolution . . . . . . . . . . 7
2.8. Malicious node performs a replay attack . . . . . . . . . 7 2.8. Malicious node performs a replay attack . . . . . . . . . 8
2.9. Re-establishing PU-PE security during failover . . . . . . 8 2.9. Re-establishing PU-PE security during failover . . . . . . 8
2.10. Integrity . . . . . . . . . . . . . . . . . . . . . . . . 8 2.10. Integrity . . . . . . . . . . . . . . . . . . . . . . . . 9
2.11. Data Confidentiality . . . . . . . . . . . . . . . . . . . 9 2.11. Data Confidentiality . . . . . . . . . . . . . . . . . . . 9
2.12. ENRP Server Discovery . . . . . . . . . . . . . . . . . . 9 2.12. ENRP Server Discovery . . . . . . . . . . . . . . . . . . 10
2.13. Flood of endpoint unreachable messages from the PU to 2.13. Flood of endpoint unreachable messages from the PU to
the ENRP server . . . . . . . . . . . . . . . . . . . . . 10 the ENRP server . . . . . . . . . . . . . . . . . . . . . 11
2.14. Flood of endpoint keep alive messages from the ENRP 2.14. Flood of endpoint keep alive messages from the ENRP
server to a PE . . . . . . . . . . . . . . . . . . . . . . 11 server to a PE . . . . . . . . . . . . . . . . . . . . . . 11
2.15. Security of the ENRP database . . . . . . . . . . . . . . 11 2.15. Security of the ENRP database . . . . . . . . . . . . . . 12
2.16. Cookie mechanism security . . . . . . . . . . . . . . . . 12 2.16. Cookie mechanism security . . . . . . . . . . . . . . . . 12
3. Security Considerations . . . . . . . . . . . . . . . . . . . 12 3. Security Considerations . . . . . . . . . . . . . . . . . . . 13
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15
5. Normative References . . . . . . . . . . . . . . . . . . . . . 14 5. Normative References . . . . . . . . . . . . . . . . . . . . . 15
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16
Intellectual Property and Copyright Statements . . . . . . . . . . 17 Intellectual Property and Copyright Statements . . . . . . . . . . 18
1. Introduction 1. Introduction
RSerPool [I-D.ietf-rserpool-overview] provides a session layer for The RSerPool architecture[I-D.ietf-rserpool-overview] supports high-
robustness. The session layer function may redirect communication availability and load balancing by enabling a pool user to identify
transparently to upper layers. This alters the direct one-to-one the most appropriate server from the server pool at a given time.
association between communicating endpoints which typically exists The architecture is defined to support a set of basic goals. These
between clients and servers. In particular, secure operation of include an application-independent protocol mechanisms, separation of
protocols often relies on assumptions at different layers regarding server naming from IP addressing, the use of the end-to-end principle
the identity of the communicating party and the continuity of the to avoid dependencies on intermediate equipment, separation of
communication between endpoints. Further, the operation of RSerPool session availability/failover functionality from application itself,
itself has security implications and risks. The session layer the ability to facilitate different server selection policies, the
operates dynamically which imposes additional concerns for the
overall security of the end-to-end application.
The RSerPool architecture supports high-availability and load
balancing by enabling a pool user to identify the most appropriate
server from the server pool at a given time. The architecture is
defined to support a set of basic goals. These include an
application-independent protocol mechanisms, separation of server
naming from IP addressing, the use of the end-to-end principle to
avoid dependencies on intermediate equipment, separation of session
availability/failover functionality from application itself, the
ability to facilitate different server selection policies, the
ability to facilitate a set of application-independent failover ability to facilitate a set of application-independent failover
capabilities and a peer-to-peer structure. capabilities and a peer-to-peer structure.
RSerPool provides a session layer for robustness. 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 servers. 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 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 This document explores the security implications of RSerPool, both
due to its own functions and due to its being interposed between due to its own functions and due to its being interposed between
applications and transport interfaces. applications and transport interfaces.
This document is related to the RSerPool
ASAP[I-D.ietf-rserpool-asap]and ENRP [I-D.ietf-rserpool-enrp]protocol
documents which describe in their security consideration sections the
mechanisms for meeting the security requirements in this document.
TLS[RFC4346] is the security mechanism for RSerPool that was selected
to meet all the requirements described in this document.
1.1. Definitions 1.1. Definitions
This document uses the following terms: This document uses the following terms:
Endpoint Name Resolution Protocol (ENRP): Endpoint Name Resolution Protocol (ENRP):
Within the operational scope of Rserpool, ENRP Within the operational scope of RSerPool,
[I-D.ietf-rserpool-enrp] defines the procedures and message ENRP[I-D.ietf-rserpool-enrp] defines the procedures and message
formats of a distributed fault-tolerant registry service for formats of a distributed fault-tolerant registry service for
storing, bookkeeping, retrieving, and distributing pool operation storing, bookkeeping, retrieving, and distributing pool operation
and membership information. and membership information.
Aggregate Server Access Protocol (ASAP): Aggregate Server Access Protocol (ASAP):
ASAP [I-D.ietf-rserpool-asap] is a session layer protocol which ASAP [I-D.ietf-rserpool-asap] is a session layer protocol which
uses ENRP to provide a high availability handlespace. ASAP is uses ENRP to provide a high availability handlespace. ASAP is
responsible for the abstraction of the underlying transport responsible for the abstraction of the underlying transport
technologies, load distribution management,fault management, as technologies, load distribution management,fault management, as
well as the presentation to the upper layer (i.e., the ASAP user) well as the presentation to the upper layer (i.e., the ASAP user)
skipping to change at page 4, line 20 skipping to change at page 4, line 28
A collection of servers providing the same application A collection of servers providing the same application
functionality. functionality.
Pool handle: Pool handle:
A logical pointer to a pool. Each server pool will be A logical pointer to a pool. Each server pool will be
identifiable in the operational scope of the system by a unique identifiable in the operational scope of the system by a unique
pool handle. pool handle.
ENRP handlespace (or handlespace): ENRP handlespace (or handlespace):
A cohesive structure of pool names and relations that may be A cohesive structure of pool names and relations that may be
queried by a client. queried by a client. A client in this context is an application
that accesses another remote application running on a server using
a network.
Pool element (PE): A server entity having registered to a pool. Pool element (PE): A server entity having registered to a pool.
Pool user (PU): A server pool user. Pool user (PU): A server pool user.
1.2. Conventions 1.2. Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
skipping to change at page 4, line 45 skipping to change at page 5, line 7
2.1.1. Threat 2.1.1. Threat
A malicious node could send a stream of false registrations/ A malicious node could send a stream of false registrations/
deregistrations on behalf of non-existent PEs to ENRP servers at a deregistrations on behalf of non-existent PEs to ENRP servers at a
very rapid rate and thereby create unnecessary state in an ENRP very rapid rate and thereby create unnecessary state in an ENRP
server. server.
2.1.2. Effect 2.1.2. Effect
Corrupting the pool registrar database and/or disabling the Rserpool The malicious node will corrupt the pool registrar database and/or
discovery and database function. This represents a denial of service disable the RSerPool discovery and database function. This
attack as the PU would potentially get an IP address of a non- represents a denial of service attack as the PU would potentially get
existent PE in response to an ENRP query. an IP address of a non-existent PE in response to an ENRP query.
2.1.3. Requirement 2.1.3. Requirement
An ENRP server that receives a registration/deregistration SHOULD NOT An ENRP server that receives a registration/deregistration MUST NOT
create or update state information until it has authenticated the PE. create or update state information until it has authenticated the PE.
TLS is used as the authentication mechanism.
2.2. PE Registration/Deregistration flooding -- unauthorized PE 2.2. PE Registration/Deregistration flooding -- unauthorized PE
2.2.1. Threat 2.2.1. Threat
A malicious node or PE could send a stream of registrations/ A malicious node or PE could send a stream of registrations/
deregistrations that are unauthorized to register/deregister - to deregistrations that are unauthorized to register/deregister - to
ENRP servers at a very rapid rate and thereby create unnecessary ENRP servers at a very rapid rate and thereby create unnecessary
state in an ENRP server. state in an ENRP server.
2.2.2. Effect 2.2.2. Effect
This attack will corrupt the pool registrar database and/or disable This attack will corrupt the pool registrar database and/or disable
the Rserpool discovery and database function. There is the potential the RSerPool discovery and database function. There is the potential
for two types of attacks, denial of service and data interception. for two types of attacks, denial of service and data interception.
In the denial of service attack, the PU gets an IP address of a rogue In the denial of service attack, the PU gets an IP address of a rogue
PE in response to an ENRP query which might not provide the actual PE in response to an ENRP query which might not provide the actual
service. In the data interception attack, it does provide the service. In addition, a flood of message could prevent legitimate
service as man in the middle which allows the attacker to collect PEs from registering. In the data interception attack, the rogue PE
data. In addition, a flood of message could prevent legitimate PEs does provide the service as man in the middle which allows the
from registering. attacker to collect data.
2.2.3. Requirement 2.2.3. Requirement
An ENRP server that receives a registration/deregistration SHOULD NOT An ENRP server that receives a registration/deregistration MUST NOT
create or update state information until the authentication create or update state information until the authentication
information of the registering/de-registering entity is verified. information of the registering/de-registering entity is verified.
TLS is used as the authentication mechanism between the ENRP server
and PE.
2.3. PE Registration/Deregistration spoofing 2.3. PE Registration/Deregistration spoofing
2.3.1. Threat 2.3.1. Threat
A malicious node could send false registrations/deregistrations to A malicious node could send false registrations/deregistrations to
ENRP servers concerning a legitimate PE thereby creating false state ENRP servers concerning a legitimate PE thereby creating false state
information in the ENRP servers. information in the ENRP servers.
2.3.2. Effect 2.3.2. Effect
skipping to change at page 6, line 9 skipping to change at page 6, line 19
and would be propagated to other ENRP servers thereby corrupting the and would be propagated to other ENRP servers thereby corrupting the
ENRP database. DDoS, by adding a PE that is a target for DDoS attack ENRP database. DDoS, by adding a PE that is a target for DDoS attack
for some popular high volume service the attacker can register a PE for some popular high volume service the attacker can register a PE
that a lot of PUs will try to connect to. This allows man in the that a lot of PUs will try to connect to. This allows man in the
middle or masquerade attacks on the service provided by the middle or masquerade attacks on the service provided by the
legitimate PEs. If a attacker registers its server address as a PE legitimate PEs. If a attacker registers its server address as a PE
and handles the requests he can eavesdrop on service data. and handles the requests he can eavesdrop on service data.
2.3.3. Requirement 2.3.3. Requirement
An ENRP server that receives a registration/deregistration SHOULD NOT An ENRP server that receives a registration/deregistration MUST NOT
create or update state information until it has authenticated the PE. create or update state information until it has authenticated the PE.
TLS is used as the authentication mechanism between the ENRP server
and the PE. A PE can register only for itself and cannot register on
behalf of other PEs.
2.4. PE Registration/Deregistration unauthorized 2.4. PE Registration/Deregistration unauthorized
2.4.1. Threat 2.4.1. Threat
A PE who is not authorized to join a pool could send registrations/ A PE who is not authorized to join a pool could send registrations/
deregistrations to ENRP servers thereby creating false state deregistrations to ENRP servers thereby creating false state
information in the ENRP servers. information in the ENRP servers.
2.4.2. Effect 2.4.2. Effect
This attack would generate misinformation in the ENRP server This attack would generate misinformation in the ENRP server
concerning a PE and would be propagated to other ENRP servers thereby concerning a PE and would be propagated to other ENRP servers thereby
corrupting the ENRP database. This allows man in the middle or corrupting the ENRP database. This allows man in the middle or
masquerade attacks on the service provided by the legitimate PEs. If masquerade attacks on the service provided by the legitimate PEs. If
a attacker registers its server address as a PE and handles the a attacker registers its server address as a PE and handles the
requests he can eavesdrop on service data. requests he can eavesdrop on service data.
2.4.3. Requirement 2.4.3. Requirement
An ENRP server that receives a registration/deregistration SHOULD NOT An ENRP server that receives a registration/deregistration MUST NOT
create or update state information until it has authorized the create or update state information until it has authorized the
requesting entity. requesting entity. TLS is used as the authentication mechanism.
2.5. Malicious ENRP server joins the group of legitimate ENRP servers 2.5. Malicious ENRP server joins the group of legitimate ENRP servers
2.5.1. Threat 2.5.1. Threat
A malicious ENRP server joins the group of legitimate ENRP servers A malicious ENRP server joins the group of legitimate ENRP servers
with the intent of propagating inaccurate updates to corrupt the ENRP with the intent of propagating inaccurate updates to corrupt the ENRP
database. The attacker sets up an ENRP server and attempts to database. The attacker sets up an ENRP server and attempts to
communicate with other ENRP servers. communicate with other ENRP servers.
2.5.2. Effect 2.5.2. Effect
The result would be Inconsistent ENRP database state. The result would be Inconsistent ENRP database state.
2.5.3. Requirement 2.5.3. Requirement
ENRP servers SHOULD perform mutual authentication. This would ENRP servers MUST perform mutual authentication. This would prevent
prevent the attacker from joining its ENRP server to the pool. the attacker from joining its ENRP server to the pool. TLS is used
as the mutual authentication mechanism. Any server that presents a
valid certificate is allowed to join.
2.6. Registration/deregistration with malicious ENRP server 2.6. Registration/deregistration with malicious ENRP server
2.6.1. Threat 2.6.1. Threat
A PE unknowingly registers/deregisters with malicious ENRP server. A PE unknowingly registers/deregisters with malicious ENRP server.
2.6.2. Effect 2.6.2. Effect
The registration might not be properly processed or ignored. A rogue The registration might not be properly processed or ignored. A rogue
ENRP server has the ability to return any address to a user ENRP server has the ability to return any address to a user
requesting service which could result in denial of service or requesting service which could result in denial of service or
connection to a rouge PE of the attackers choice for service. connection to a rouge PE of the attackers choice for service.
2.6.3. Requirement 2.6.3. Requirement
The PE SHOULD authenticate the ENRP server. The PE MUST authenticate the ENRP server. TLS is the mechanism used
for the authentication.
2.7. Malicious ENRP Handlespace Resolution 2.7. Malicious ENRP Handlespace Resolution
2.7.1. Threat 2.7.1. Threat
The ASAP protocol receives a handlespace resolution response from an The ASAP protocol receives a handlespace resolution response from an
ENRP server, but the ENRP server is malicious and returns random IP ENRP server, but the ENRP server is malicious and returns random IP
addresses or an inaccurate list in response to the pool handle. addresses or an inaccurate list in response to the pool handle.
2.7.2. Effect 2.7.2. Effect
skipping to change at page 7, line 42 skipping to change at page 8, line 12
PU application communicates with the wrong PE or is unable to locate 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 the PE since the response is incorrect in saying that a PE with that
handle did not exist. A rouge ENRP server has the ability to return handle did not exist. A rouge ENRP server has the ability to return
any address to ASAP requesting an address list which could result in any address to ASAP requesting an address list which could result in
denial of service or connection to a rouge PE of the attackers choice denial of service or connection to a rouge PE of the attackers choice
for service. From the PE, the attacker could eavesdrop or tamper for service. From the PE, the attacker could eavesdrop or tamper
with the application. with the application.
2.7.3. Requirement 2.7.3. Requirement
ASAP SHOULD authenticate the ENRP server. ASAP SHOULD authenticate the ENRP server. TLS is the mechanism used
for authentication.
2.8. Malicious node performs a replay attack 2.8. Malicious node performs a replay attack
2.8.1. Threat 2.8.1. Threat
A malicious node could replay the entire message previously sent by a A malicious node could replay the entire message previously sent by a
legitimate entity. This could create false/unnecessary state in the legitimate entity. This could create false/unnecessary state in the
ENRP servers when the replay is for registration/de-registration or ENRP servers when the replay is for registration/de-registration or
update. update.
2.8.2. Effect 2.8.2. Effect
The result is that false/extra state is maintained by ENRP servers. The result is that false/extra state is maintained by ENRP servers.
This would most likely be used as a denial of service attack if the This would most likely be used as a denial of service attack if the
replay is used to deregister all PEs. replay is used to deregister all PEs.
2.8.3. Requirement 2.8.3. Requirement
The protocol SHOULD prevent replay attacks. The protocol MUST prevent replay attacks. The replay attack
prevention mechanism in TLS meets this requirement.
2.9. Re-establishing PU-PE security during failover 2.9. Re-establishing PU-PE security during failover
2.9.1. Threat 2.9.1. Threat
PU fails over from PE A to PE B. In the case that the PU had a 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 trusted relationship with PE A, then the PU will likely not have the
same relationship established with PE B. same relationship established with PE B.
2.9.2. Effect 2.9.2. Effect
skipping to change at page 8, line 36 skipping to change at page 9, line 9
PU and PE A, the equivalent trust relationship will not exist between PU and PE A, the equivalent trust relationship will not exist between
PU and PE B. This will violate security policy. For example, if the PU and PE B. This will violate security policy. For example, if the
security context with A involves encryption and the security context security context with A involves encryption and the security context
with B does not then an attacker could take advantage of the change with B does not then an attacker could take advantage of the change
in security. in security.
2.9.3. Requirement 2.9.3. Requirement
The application SHOULD be notified when fail over occurs so the The application SHOULD be notified when fail over occurs so the
application can take appropriate action to establish a trusted application can take appropriate action to establish a trusted
relationship with PE B. relationship with PE B. ENRP has a mechanism to perform this
function.
2.10. Integrity 2.10. Integrity
2.10.1. Threat 2.10.1. Threat
The following are all instances of the same class of threats, and all
have similar effects.
a. ENRP response to pool handle resolution is corrupted during a. ENRP response to pool handle resolution is corrupted during
transmission transmission
b. ENRP peer messages are corrupted during transmission b. ENRP peer messages are corrupted during transmission
c. PE sends update for values and that information is corrupted c. PE sends update for values and that information is corrupted
during transmission during transmission
2.10.2. Effect 2.10.2. Effect
The result is that ASAP receives corrupt information for pool handle The result is that ASAP receives corrupt information for pool handle
resolution which the PU believes to be accurate. This corrupt resolution which the PU believes to be accurate. This corrupt
information could be an IP address that does not resolve to a PE so information could be an IP address that does not resolve to a PE so
the PU would not be able to contact the server. the PU would not be able to contact the server.
2.10.3. Requirement 2.10.3. Requirement
An integrity mechanism SHOULD be present. Corruption of data that is An integrity mechanism MUST be present. Corruption of data that is
passed to the PU means that the PU can't rely on it. The consequence passed to the PU means that the PU can't rely on it. The consequence
of corrupted information is that the IP addresses passed to the PU of corrupted information is that the IP addresses passed to the PU
might be wrong in which case it will not be able to reach the PE. might be wrong in which case it will not be able to reach the PE.
The interfaces that SHOULD implement integrity are PE to ENRP server The interfaces that MUST implement integrity are PE to ENRP server
and ENRP to ENRP server. and ENRP to ENRP server. The integrity mechanism in TLS is used for
this.
2.11. Data Confidentiality 2.11. Data Confidentiality
2.11.1. Threat 2.11.1. Threat
An eavesdropper capable of snooping on fields within messages in An eavesdropper capable of snooping on fields within messages in
transit, may be able to garner information such as transit, may be able to gather information such as
topology/location/IP addresses etc. that may not be desirable to topology/location/IP addresses etc. that may not be desirable to
divulge. divulge.
2.11.2. Effect 2.11.2. Effect
Information that an administrator does not wish to divulge is Information that an administrator does not wish to divulge is
divulged. The attacker gains valuable information that can be used divulged. The attacker gains valuable information that can be used
for financial gain or attacks on hosts. for financial gain or attacks on hosts.
2.11.3. Requirement 2.11.3. Requirement
A provision for data confidentiality service SHOULD be available. A provision for data confidentiality service SHOULD be available.
TLS provides data confidentiality in support of this mechanism.
2.12. ENRP Server Discovery 2.12. ENRP Server Discovery
2.12.1. Threats 2.12.1. Threats
a. Thwarting successful discovery: When a PE wishes to register with a. Thwarting successful discovery: When a PE wishes to register with
an ENRP server, it needs to discover an ENRP server. An attacker an ENRP server, it needs to discover an ENRP server. An attacker
could thwart the successful discovery of ENRP server(s) thereby could thwart the successful discovery of ENRP server(s) thereby
inducing the PE to believe that no ENRP server is available. For inducing the PE to believe that no ENRP server is available. For
instance, the attacker could reduce the returned set of ENRP instance, the attacker could reduce the returned set of ENRP
skipping to change at page 10, line 36 skipping to change at page 11, line 10
c. This malicious ENRP would either misrepresent, ignore or c. This malicious ENRP would either misrepresent, ignore or
otherwise hide or distort information about the PE to subvert otherwise hide or distort information about the PE to subvert
RSerPool operation. RSerPool operation.
d. Same as above. d. Same as above.
2.12.3. Requirement 2.12.3. Requirement
A provision for authentication MUST be present and a provision for A provision for authentication MUST be present and a provision for
data confidentiality service SHOULD be present. data confidentiality service SHOULD be present. TLS is the mechanism
used for both confidentiality and authentication.
2.13. Flood of endpoint unreachable messages from the PU to the ENRP 2.13. Flood of endpoint unreachable messages from the PU to the ENRP
server server
2.13.1. Threat 2.13.1. Threat
Endpoint unreachable messages are sent by ASAP to the ENRP server Endpoint unreachable messages are sent by ASAP to the ENRP server
when it is unable to contact a PE. There is the potential that a PU when it is unable to contact a PE. There is the potential that a PU
could flood the ENRP server intentionally or unintentionally with could flood the ENRP server intentionally or unintentionally with
these messages. The non-malicious case would require an incorrect these messages. The non-malicious case would require an incorrect
skipping to change at page 11, line 16 skipping to change at page 11, line 36
The result is a DOS attack on the ENRP server. The ENRP server would The result is a DOS attack on the ENRP server. The ENRP server would
not be able to service other PUs effectively and would not be able to not be able to service other PUs effectively and would not be able to
take registrations from PEs in a timely manner. Further, it would take registrations from PEs in a timely manner. Further, it would
not be able to communicate with other ENRP servers in the pool to not be able to communicate with other ENRP servers in the pool to
update the database in a timely fashion. update the database in a timely fashion.
2.13.3. Requirement 2.13.3. Requirement
The number of endpoint unreachable messages sent to the ENRP server The number of endpoint unreachable messages sent to the ENRP server
from the PU SHOULD be limited. from the PU SHOULD be limited. This mechanism is described in the
ASAP[I-D.ietf-rserpool-asap] protocol document.
2.14. Flood of endpoint keep alive messages from the ENRP server to a 2.14. Flood of endpoint keep alive messages from the ENRP server to a
PE PE
2.14.1. Threat 2.14.1. Threat
Endpoint keep-alive messages would be sent from the ENRP server to Endpoint keep-alive messages would be sent from the ENRP server to
the PEs during the process of changing the home ENRP server for this the PEs during the process of changing the home ENRP server for this
PE. PE.
2.14.2. Effect 2.14.2. Effect
If the ENRP server maliciously sent a flood of endpoint keep alive If the ENRP server maliciously sent a flood of endpoint keep alive
messages to the PE, the PE would not be able to service clients. The messages to the PE, the PE would not be able to service clients. The
result is an unintentional DOS attack on the PE. result is an unintentional DOS attack on the PE.
2.14.3. Requirement 2.14.3. Requirement
ENRP SHOULD limit the frequency of keep alive messages to a given PE ENRP MUST limit the frequency of keep alive messages to a given PE to
to prevent overwhelming the PE. prevent overwhelming the PE. This mechanism is described in the
ENRP[I-D.ietf-rserpool-enrp] protocol document.
2.15. Security of the ENRP database 2.15. Security of the ENRP database
2.15.1. Threat 2.15.1. Threat
Another consideration involves the security characteristics of the Another consideration involves the security characteristics of the
ENRP database. Suppose that some of the PEs register with an ENRP ENRP database. Suppose that some of the PEs register with an ENRP
server using security and some do not. In this case, when a client server using security and some do not. In this case, when a client
requests handle space resolution information from ENRP, it would have requests handle space resolution information from ENRP, it would have
to be informed which entries are "secure" and which are not. to be informed which entries are "secure" and which are not.
skipping to change at page 12, line 15 skipping to change at page 12, line 37
2.15.3. Requirement 2.15.3. Requirement
The requirement is that either the entire ENRP server database MUST The requirement is that either the entire ENRP server database MUST
be secure, that is, it has registrations exclusively from PEs that be secure, that is, it has registrations exclusively from PEs that
have used security mechanisms or the entire database MUST be have used security mechanisms or the entire database MUST be
insecure, that is, registrations are from PEs that have used no insecure, that is, registrations are from PEs that have used no
security mechanisms. ENRP servers that support security MUST reject security mechanisms. ENRP servers that support security MUST reject
any PE server registration that does not use the security mechanisms. any PE server registration that does not use the security mechanisms.
Likewise, ENRP servers that support security MUST NOT accept updates Likewise, ENRP servers that support security MUST NOT accept updates
from other ENRP servers that do not use security mechanisms. from other ENRP servers that do not use security mechanisms. TLS is
used as the security mechanism so any information not sent using TLS
to a secure ENRP server MUST be rejected.
2.16. Cookie mechanism security 2.16. Cookie mechanism security
The application layer is out of scope for RSerPool. However, some The application layer is out of scope for RSerPool. However, some
questions have been raised about the security of the cookie mechanism questions have been raised about the security of the cookie mechanism
which will be addressed. which will be addressed.
Cookies are passed via the ASAP control channel. If TCP is selected Cookies are passed via the ASAP control channel. If TCP is selected
as the transport, then the data and control channel MUST be as the transport, then the data and control channel MUST be
multiplexed. Therefore, the cases: multiplexed. Therefore, the cases:
skipping to change at page 12, line 46 skipping to change at page 13, line 21
1. the multiplexed control channel-data channel is secure OR 1. the multiplexed control channel-data channel is secure OR
2. the multiplexed control channel-data channel is not secured 2. the multiplexed control channel-data channel is not secured
This applies to cookies in the sense that if you choose to secure This applies to cookies in the sense that if you choose to secure
your control-data channel, then the cookies are secured. your control-data channel, then the cookies are secured.
A second issue is that the PE could choose to sign and/or encrypt the A second issue is that the PE could choose to sign and/or encrypt the
cookie. In this case, it must share keys and other information with cookie. In this case, it must share keys and other information with
other PEs. This application level state sharing is out of scope of other PEs. This application level state sharing is out of scope of
Rserpool. RSerPool.
3. Security Considerations 3. Security Considerations
This informational document characterizes potential security threats This informational document characterizes potential security threats
targeting the Rserpool architecture. The security mechanisms targeting the RSerPool architecture. The security mechanisms
required to mitigate these threats are summarized for each required to mitigate these threats are summarized for each
architectural component. It will be noted which mechanisms are architectural component. It will be noted which mechanisms are
required and which are optional. required and which are optional.
From the threats described in this document, the security services From the threats described in this document, the security services
required for the RSerPool protocol suite are given in the following required for the RSerPool protocol suite are given in the following
table. table.
+--------------+----------------------------------------------------+ +--------------+----------------------------------------------------+
| Threat | Security mechanism in response | | Threat | Security mechanism in response |
skipping to change at page 14, line 43 skipping to change at page 15, line 34
4. IANA Considerations 4. IANA Considerations
This document introduces no additional considerations for IANA. This document introduces no additional considerations for IANA.
5. Normative References 5. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4346] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.1", RFC 4346, April 2006.
[I-D.ietf-rserpool-asap] [I-D.ietf-rserpool-asap]
Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, Stewart, R., Xie, Q., Stillman, M., and M. Tuexen,
"Aggregate Server Access Protocol (ASAP)", "Aggregate Server Access Protocol (ASAP)",
draft-ietf-rserpool-asap-19 (work in progress), draft-ietf-rserpool-asap-19 (work in progress),
March 2008. March 2008.
[I-D.ietf-rserpool-enrp] [I-D.ietf-rserpool-enrp]
Kim, D., Stewart, R., Stillman, M., Tuexen, M., and A. Kim, D., Stewart, R., Stillman, M., Tuexen, M., and A.
Silverton, "Endpoint Handlespace Redundancy Protocol Silverton, "Endpoint Handlespace Redundancy Protocol
(ENRP)", draft-ietf-rserpool-enrp-19 (work in progress), (ENRP)", draft-ietf-rserpool-enrp-19 (work in progress),
March 2008. March 2008.
[I-D.ietf-rserpool-overview] [I-D.ietf-rserpool-overview]
Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An
Overview of Reliable Server Pooling Protocols", Overview of Reliable Server Pooling Protocols",
draft-ietf-rserpool-overview-05 (work in progress), draft-ietf-rserpool-overview-06 (work in progress),
February 2008. May 2008.
Authors' Addresses Authors' Addresses
Maureen Stillman (editor) Maureen Stillman (editor)
Nokia Nokia
35 Woodcrest Avenue 35 Woodcrest Avenue
Ithaca, NY 14850 Ithaca, NY 14850
US US
Email: maureen.stillman@nokia.com Email: maureen.stillman@nokia.com
 End of changes. 45 change blocks. 
74 lines changed or deleted 107 lines changed or added

This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/