[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re-review of draft-ietf-hokey-erx-13.txt



Re-Review of draft-ietf-hokey-erx-13.txt
 
I went through the draft again.  Note that these comments only reflect
my own review;  the author still needs to follow up with other reviewers.
 
Here are some overall comments:
 
1.  I think you need to deal with the potential fraud issues in the
document.  This would involve describing the precautions that a AAA
server should take in authorizing domains to receive DSRKs, and
validating subsequent accounting records.
 
2. I think you need to specify the applicability of this specification.
I'm still somewhat uncertain about whether we're talking about
intra-media, inter-media, inter-domain (with some meaning of
domain), etc.  Please clear this up.
 
Some details:
 
   Note that this may introduce some delay in starting EAP.  In some
   lower layers, the delay can be minimized or even avoided by the peer
   initiating EAP by sending messages such as EAPoL-Start in the IEEE
   802.1X specification [10].
 
[BA] Since ERX is not compatible with IEEE 802.1X (whose state machine
doesn't support peer-initiated messages) I don't see how this is
possible.  It might be better to omit the reference.
 
   When the EAP-Request/Identity times out, the authenticator
   MUST NOT close connection if an ERP exchange is in progress or has
   already succeeded in establishing a reauthentication MSK.
 
[BA] What does "close connection" mean?  Is the document making
normative statements about link layers specified outside the IETF?
 
   The authenticator uses the realm in the keyName-NAI [4] field to send
   the message to the appropriate ER server.
 
[BA] Do you really mean that the authenticator is using the realm to
determine the IP address of the ER server?  Or is the keyname-NAI field
just copied into the User-Name attribute so that routing happens
normally? 
 
   The local ER server SHALL request
   the home AAA server for the DSRK by sending the domain name in the
   AAA message that carries the EAP-Initiate/Reauth bootstrap message.
   The local ER server MUST be in the path from the peer to the home ER
   server.  If it is not, it cannot request the DSRK.
 
[BA] Since the local ER server does not determine
whether it is on the path how is "path pinning" to be achieved? How
does the AAA server know whether an ER server is on the path or not?
What does it do if it is not on the path?  In other words, what does
the MUST imply? 
 
Also, how is the mapping from domain name to IP address
to be achieved?  Is this via an A/AAAA RR?  A SRV RR lookup?
 
Section 4.3
 
   In case of ERP with the
   home ER server, the peer uses the realm from its original NAI; in
   case of a local ER server, the peer uses the domain name received at
   the lower layer or through a ERP bootstrapping exchange.
 
[BA] Which "original NAI" are we talking about?  The NAI used in the
EAP-Response/Identity in the original EAP conversation?  The NAI
in the Peer-Id?  The NAI in the ERX conversation?
 
Section 5.1
 
   o  In addition, the rMSK is sent along with the EAP-Finish/Re-auth
      message, in a AAA attribute [12].
 
[BA] Transport of the MSK is already specified in existing AAA documents,
such as RFC 4072 (Diameter EAP).  Why is reference 12 being given here
rather than those existing documents?  This document does not update
those specifications.
 
Section 8
 
      Authenticate all parties
 
         The EAP Re-auth protocol provides mutual authentication of the
         peer and the server.  Both parties need to possess the keying
         material that resulted from a previous EAP exchange in order to
         successfully derive the required keys.  Also, both the EAP re-
         authentication Response and the EAP re-authentication
         Information messages are integrity protected so that the peer
         and the server can verify each other.  When the ERP exchange is
         executed with a local ER server, the peer and the local server
         mutually authenticate each other via that exchange in the same
         manner.  The peer and the authenticator authenticate each other
         in the secure association protocol executed by the lower layer
         just as in the case of a regular EAP exchange.
 
[BA] I think you mean "ERX" not "EAP re-authentication" or ERP, right?
One thing that is left out here is authentication between the ERX local
server and the ERX home server.  This exists if they are one hop apart,
but otherwise not.  So I think there is an assumption that the ERX server
is only willing to provide keys to domains that it is explicitly
authorized to deal with.
 
         It is RECOMMENDED that the AAA protocol be protected using
         IPsec or TLS so that the keys are protected in transit.  Note
         however that keys may be exposed to AAA proxies along the way
         and compromise of any of those proxies may result in compromise
         of keys being transported through them.
 
[BA] I think you just want to say "It is RECOMMENDED that the AAA protocol
protect the keys in transit.  This can be accomplished via transmission
layer security (IPsec or TLS), or via an application-layer mechanism."
 
      Confidentiality of identity
 
         Deployments where privacy is a concern may find the use of
         rIKname-NAI to route ERP messages serves their privacy
         requirements.  Note that it is plausible to associate multiple
         runs of ERP messages since the rIKname is not changed as part
         of the ERP protocol.  There was no consensus for that
         requirement at the time of development of this specification.
         If the rIKname is not used and the Peer-ID is used instead, the
         ERP exchange will reveal the Peer-ID over the wire.
 
[BA] The rest of the spec does not talk about use of the Peer-Id.  Since
not all EAP method deriving keys have a Peer-Id, do you really want this
mentioned here?
 
   To prevent such DoS attacks, an ERP failure should not result in
   deletion of any authorization state established by a full EAP
   exchange. 
 
[BA] Is this purely up to this specification to determine?  Typically
the lower layer defines the authorization state and how it is installed/removed.
This may not necessarily involve EAP (e.g. 802.11 4-way handshake).