Klaas,

Thanks for your feedback.
Joe and I are currently working on a revision that will hopefully
address all issues raised by Joe and you.

Regards,
Katrin

> -----Original Message-----
> From: Klaas Wierenga [mailto:kl...@wierenga.net]
> Sent: Friday, June 26, 2009 8:49 AM
> To: Joseph Salowey (jsalowey)
> Cc: Hoeper Katrin-QWKN37; emu@ietf.org
> Subject: Re: [Emu] draft-ietf-emu-chbind-02 and AAA interaction
> 
> Joe, Katrin,
> 
> A few comments
> 
> > Thanks for the clarifications, I think I understand better now.
> >
> > Comments inline.
> >
> >
> >>>> Joe,
> >>>>
> >>>> Thank you for bringing this up. Find my replies below:
> >>>>
> >>>> "1. In sections 5.1 and 5.2 clarify the role of message i2 with
> >>>> respect to channel bindings."
> >>>>
> >>>> [KH] I agree with your observations that the use and
> >> exchange of i2
> >>>> is not well described in the draft and needs to be clarified.
> >>>>
> >>>> The EAP server can utilize three pieces of information for its
> >>>> channel binding verification, namely: i1 received from
> >> the EAP peer,
> >>>> i2 received as part of AAA communications with the
> >> authenticator and
> >>>> i3 stored in a local database. The confusion lies in the
> >> description
> >>>> of i2 and its "exchange".
> >>>>
> >>>> i2 is basically information that the EAP server already "knows"
> >>>> about the authenticator. The information is *not* sent as
> >> payload to
> >>>> the EAP server, it was rather part of previous
> >> communications with
> >>>> the authenticator during the current EAP session. For
> >> example, the
> >>>> EAP server typically "knows" the NAS-IP address of the
> >> authenticator
> >>>> in an EAP execution. Basically, we want to utilize
> >> information for
> >>>> the channel binding consistency check that the EAP server already
> >>>> knows about the authenticator. This information is referred to as
> >> i2.
> >>>>
> >>>> I agree that the arrow with i2 from authenticator to EAP
> >> server in
> >>>> Figure 1 is wrong, because i2 is not a protocol message. Figure 1
> >>>> does not reflect the above description and needs to be revised
> >>>> accordingly.
> >>>> On the other hand, an EAP server can optionally include i2 in its
> >>>> reply to the EAP peer, e.g. to enable the peer to perform its own
> >>>> consistency checks. In that case, i2 needs to be explicitly
> >>>> exchanged.
> >>>>
> >>> [Joe] OK, I think I may understand better.  If I understand
> >> correctly,
> >>> there are two separate consistency checks:
> >>>
> >>> 1. one checking the consistency of what the client sees against a
> >>> database of what should be seen. (i1) 2. one checking the
> >> consistency
> >>> of what the authenticator against a database of what should
> >> be seen.
> >>> (i2)
> >>>
> >>> Is this correct?
> >>>
> >> [KH] Almost. Check 1 "is the authenticator lying to the peer?":
> >> consistency check of i1 and i2 with the aid of the database
> >> (because a direct comparison is not possible), i.e. checking
> >> whether the info submitted to the peer and known to by the
> >> EAP server are consistent.
> >> Check 2 "is the authenticator lying to both ends to violate rules":
> >> check whether i1 and i2 comply with policies stored in the
database.
> >> Actually check 2 could be split into two checks: 2a) check
> >> whether authenticator lies to the EAP server and 2b) does the
> >> authenticator violate any rules.
> >>
> > [Joe] Good point, so 2A would be useful in the case where the AAA is
> > making some policy decision based on what the authenticator states
and
> > there is more than one choice for the authenticator.  Perhaps if the
> > authenticator can advertise a free and charged SSID the client
> > associates with the free one, but the authenticator reports the
> > charged
> > one.  This may be a bit contrived, but it seems like it could be a
> > good
> > thing to do.  I think it would be useful to split this up into 2A
and
> > 2B.  2A is needed when there is an attribute used in AAA policy that
> > the
> > client is aware of and there is more than one choice for the value
of
> > the attribute for the authenticator.  2B I think is something more
for
> > AAA validation of the message.
> 
> yes, I agree
> 
> >
> >
> >>> It seems that in your picture i2 is really between the
authenticator
> >> and
> >>> AAA.  This affects some of your statements above.  For
> >> example its not
> >>> clear to me that the EAP Server would necessarily know
> >> anything about
> >>> NAS-IP.
> >> [KH] This is true and needs to be clarified. Either the EAP
> >> server can only use the AAA attributes it knows about the
> >> authenticator from the on-going EAP execution or the EAP
> >> server needs to get this information from the AAA server to
> >> perform the consistency check. Do you see any use case for the
> >> former?
> >
> > [Joe] So, I think some of the data, mostly 2B data, should be
> > validated
> > by the AAA server.  Some of the type 1 data may not be passed in the
> > AAA
> > protocol. For 1 and 2A data that is communicated in AAA I think it
> > will
> > depend upon implementation as to who maintains the authoritative
> > database for attributes.  In some cases validation responsibility
> > may be
> > split.
> >
> >>>
> >>>> "2. In section 6.1 define channel binding data as a
> >> superset of AAA
> >>>> attributes.  In particular the last paragraph needs work
> >> and seems
> >>>> inconsistent with 7.1 which allows for the inclusion of Diameter
> >>>> attributes without the exclusion of other attributes."
> >>>>
> >>>> [KH] The reason why we chose i2 as AAA data is because the
> >>>> authenticator and EAP server communicate using an AAA protocol
> >>>> during an EAP execution. Hence, the EAP server has access to AAA
> >>>> attributes of the authenticator in its role as AAA client.
> >>>
> >>> [Joe] So I think it makes sense that i2 is AAA data, what I'm not
> >> seeing
> >>> is what the EAP server is dealing with it instead of the AAA
server.
> >> [KH] Agreed, this needs to be addressed-see previous comment.
> >>>
> >>>> In this way no additional exchange of information is required
> >>>> (again, the flow in Figure 1 is
> >>>> wrong) and i2 does not need to be explicitly exchanged. This is
> >>>> important because we want to be able to add channel
> >> binding to EAP
> >>>> methods without modifying the method's protocol flow. If we would
> >>>> allow
> >>>> i2 to be any type of data about the authenticator, this would
> >>>> require an explicit message flow from authenticator to
> >> EAP server as
> >>>> part of the EAP method.
> >>>>
> >>>> To avoid the introduction of additional communication flows, the
> >>>> modification of EAP methods and potentially the
> >> involvement of other
> >>>> protocols, I argue that i2 should only contain AAA
> >> information about
> >>>> the authenticator. Any other type of information about the
> >>>> authenticator that seems desirable for the channel binding
> >>>> verification can be stored in the local database (i3).
> >>>>
> >>> [Joe] I'm fine with i2 containing AAA information, but I
> >> don't really
> >>> see how it is part of EAP channel bindings.  This seems to be more
> >> about
> >>> validating information in the AAA protocol.
> >> [KH] I believe this is the only way to check whether an
> >> authenticator is lying about its identity, i.e. the
> >> identifier& addresses broadcasted to peers and identifiers &
> >> addresses used in the backend network. Again these
> >> identifiers & addresses may be of different types but should
> >> nevertheless map to the same device (check via a lookup in
> >> the database).
> > [Joe] I'm not sure how much of this information is useful or
> > practically
> > verifiable by the EAP server.  For example, often the client has no
> > idea
> > of the NAS IP address and may not have an idea of the NAS-ID.  In
many
> > cases I'm not sure if spoofing addresses is a problem or if this is
> > very
> > manageable to maintain this information.  If we split the data into
> > i2a
> > and i2b it may be clearer.
> 
> I guess we shouldn't make assumptions as to what information is useful
> or practically verifiable. I think the bottom line is that the EAP-
> server learns a whole bunch of things, some of which may be verifiable
> in a particular environment and others are not. For example in the
> case of RadSec the EAP-server may know with some certainty what the ID
> of the NAS is and in other circumstances not. But splitting i2a and
> i2b would make things clearer.
> 
> Klaas
> 
> [no comments below here]
> 
> >
> >>>
> >>> For channel bindings I am more concerned with what is
> >> communicated in
> >>> i1.  This is what EAP methods need to carry.  i1 may need to carry
> >> some
> >>> data that may also be in a AAA attribute, but it may also need to
> >> carry
> >>> other data.   My objection is restricting everything in i1 to
being
> >> AAA
> >>> data.  The current draft seems to requirements for i1 and i2 all
> >>> together.  I don't think this is correct.
> >>>
> >> [KH] Agreed. This limitation of i1 was not intended and needs
> >> to be addressed. i1 can contain anything that was broadcasted
> >> in the authenticator's (NAS) beacon while i2 is restricted to
> >> AAA attributes.
> >>>>
> >>>> " Sections 7.1, 7.2, 7.3 only recommend comparing
> >> information with
> >>>> what is received from the NAS and not about comparing with local
> >>>> information"
> >>>>
> >>>> [KH] Section 7 describes which attributes can be used in
> >> i1 for the
> >>>> channel binding compliance check, and Section 8 the
> >> attributes that
> >>>> can be used as part of i2.  Comparing local information is only
> >>>> described as text in Section 10.1. We cannot provide concrete
> >>>> attributes here because
> >>>> i3 is protocol-independent and basically contains data
> >> derived from
> >>>> policies. I don't think we can provide concrete examples
> >> here, but
> >>>> it might be a good idea to add another section after 7 and 8, to
> >>>> generally outline how the comparison with the local information
> >>>> should be executed. In that case, Section 10 could remain
> >> the same,
> >>>> explaining how such a database can be set up.
> >>>>
> >>>> "4. Section 8 is about AAA validation and is not channel
> >> bindings,
> >>>> is this section necessary?"
> >>>>
> >>>> [KH] Disagree, see my comments to your suggestions #2.
> >>>>
> >>> [Joe] So, I see i1 as the messages used in EAP channel
> >> bindings.  i2
> >>> looks to me like validation that should be done by the AAA
protocol.
> >> I
> >>> think I may not have understood your points above.  I think
> >> the draft
> >>> needs to focus more on the requirements of i1 exchange and
> >> less on the
> >>> requirements of the i2 exchange.
> >>
> >> [KH] In order to detect whether an authenticator is "lying"
> >> you need some data to compare i1 too. We believe that lying
> >> can be detected by comparing the views the EAP peer and EAP
> >> server have about the authenticator in an EAP session. The
> >> database is needed to enable the comparison. In addition, we
> >> check for the case that the authenticator lies to both ends
> >> (i.e. to the EAP peer and the EAP server) by checking the
> >> compliance of i1 and i2 with the policies stored in the database.
> >
> > [Joe] OK, so some i1 data can be compared with i2, in particular i2A
> > data that has various options that affect policy evaluation.  In
> > general
> > all i1 and i2 data that is important to the system should be checked
> > against some authoritative database.
> >
> >>>
> >>>>
> >>>> Joe, I hope I could clarify some of your issues. I would
> >> also like
> >>>> to hear other opinions from the list on these issues.
> >>>>
> >>>> Katrin
> >>>>
> >>>>
> >>>>
> >>>> -----Original Message-----
> >>>> From: emu-boun...@ietf.org [mailto:emu-boun...@ietf.org]
> >> On Behalf
> >>>> Of Joseph Salowey (jsalowey)
> >>>> Sent: Thursday, June 18, 2009 12:12 PM
> >>>> To: emu@ietf.org
> >>>> Subject: [Emu] draft-ietf-emu-chbind-02 and AAA interaction
> >>>>
> >>>> After reviewing recent comments from Klaas on the list on Channel
> >>>> bindings there is one issue I would like to try to resolve before
> >>>> bringing this draft to last call.
> >>>>
> >>>> In section 5.1, the draft defines a message i2, which is
> >> the message
> >>>> carrying AAA attributes from the authenticator to the
> >> server using a
> >>>> AAA protocol.  While, this message does occur in the protocol
> >>>> interactions, it is actually not that important in the channel
> >>>> binding interactions because the server does not completely trust
> >>>> the authenticator and must know what is valid through some other
> >>>> mechanism, such as the local database defined in the
> >> draft.  I think
> >>>> this section is a bit misleading and needs to emphasize
> >> this point.
> >>>> This is further confused by the fact that in some
> >> sections the draft
> >>>> focuses entirely on AAA attributes to carry channel-binding
> >>>> information.  While AAA attributes are undoubtedly important to
> >>>> carry it does not appear that they should be the only
> >> type of data
> >>>> allowed especially since the AAA protocol is not required to be
> >>>> directly involved other than to carry EAP.
> >>>> This is demonstrated by the "TODO" 7.3 which suggests we
> >> need to add
> >>>> a way to carry the 802.11 RSN-IE.  Since AAA protocols haven't
> >>>> needed to carry this information to date, it is not clear that
> >>>> adding this information to them would be helpful.
> >>>> Given this I would suggest the following modifications to the
> >>>> draft:
> >>>>
> >>>> 1. In sections 5.1 and 5.2 clarify the role of message i2 with
> >>>> respect to channel bindings.
> >>>> 2. In section 6.1 define channel binding data as a
> >> superset of AAA
> >>>> attributes.  In particular the last paragraph needs work
> >> and seems
> >>>> inconsistent with 7.1 which allows for the inclusion of Diameter
> >>>> attributes without the exclusion of other attributes.
> >>>> 3. Sections 7.1, 7.2, 7.3 only recommend comparing
> >> information with
> >>>> what is received from the NAS and not about comparing with local
> >>>> information 4. Section 8 is about AAA validation and is
> >> not channel
> >>>> bindings, is this section necessary?
> >>>>
> >>>> If the working group agrees with this direction I can
> >> provide text
> >>>> for the changes.
> >>>>
> >>>> Please send comments to the list.
> >>>>
> >>>> Thanks,
> >>>>
> >>>> Joe
> >>>> _______________________________________________
> >>>> Emu mailing list
> >>>> Emu@ietf.org
> >>>> https://www.ietf.org/mailman/listinfo/emu
> >>>>
> >>
> > _______________________________________________
> > Emu mailing list
> > Emu@ietf.org
> > https://www.ietf.org/mailman/listinfo/emu

_______________________________________________
Emu mailing list
Emu@ietf.org
https://www.ietf.org/mailman/listinfo/emu

Reply via email to