comments on draft-houseley-aaa-key-mgmt-07.txt

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

 



  Hi,

  I understand this draft is in IESG evaluation and would like to register
some comments. I apologize for the tardiness of this email.

  This draft is well-written and much needed but I feel it does not
completely address the issue of using AAA for key distribution. Let me
summarize the problematic scenario in mind, why I think the draft does
not address this, and suggested additions to the draft to address my
concern.

  PROBLEM

  It is desired to use AAA to distribute keys for network access and what
is basically a 2 party model is applied to a 3 party protocol.

  A client authenticates through an authenticator to a AAA server. Upon
successful completion of the 2 party authentication protocol between the
client and AAA server a key derived from a shared secret is delivered to
the authenticator. (Known channel binding issues here). Then, a new key
hierarchy, built off another shared secret, is derived and keys from
it are sent, using AAA, to other authenticators to faccilitate fast
handoff. These keys typically have an "identity" of the authenticator
mixed into the key derivation function.

  The explaination given by proponents of this type of scheme on why
this is secure is that the authenticators all have a security association
with the AAA server, the distributed keying material is sent under the
protection of that security association, and the AAA server is trusted.
This, again, takes a 2 party model and attempts to apply it to what is
essentially a 3 party problem.

  The concern is that the security associations are most likely based on
some identity that is not known to the client and therefore is not bound
into the key, for example an IP address. The authenticator's identity mixed
into the key is a NAS Identifier and the security association it has with
the AAA server is based on its IP address. This allows an authenticator
to lie about its identity to the AAA server, through it's secure and
trusted link to the AAA server, and obtain a key intended for another
authenticator.

  Since this key is symmetric it can be used to impersonate the client
to the entity to whom it should've been delivered.

  If a key distribution protocol cannot guarantee that a key will not be
sent to the wrong entity then it is flawed.

  Also, the client is not involved in the distribution of this secret
that it shares. It just notices that some new entity has the key and
must just assume that possession of the key implies authorization to hold
the key.

  WHY IS THIS NOT ADDRESSED IN THE DRAFT

  Two groups, IEEE 802.11 Task Group "r" and the HOKEY working group,
are discussing using such a 2 party model in a 3 party key distribution
scheme. They are coming up with schemes that suffer from the problem
described above and justify them by saying that the authenticators share
a security association with the server and that the key being distributed
has the "identity" of the new authenticator mixed into it.

  People in both these groups advocating this type of flawed scheme are
well aware of the "Housley Criteria" and this draft. In fact, they point
to "Authenticate all parties" and "Bind key to its context" as specific
requirements they meet.

  (In the case of HOKEY the problem is more compound as they wish to
distribute keys from a "home" domain to visited domains and a server in
verizon.net could request a key for the sprint.net domain).

  If this draft explicitly discussed this type of flawed scheme I presume
these groups would not persist in advancing them, but persist they do.
So I would like to see some explicit guidance in this draft to direct
people away from them. Some guidance on how to ensure that this type of
subtle flaw is not perpetuated in future systems would be most helpful.

  SUGGESTED ADDTIONS TO THE DRAFT

  In "Limit Key Scope" it says, "parties MUST NOT have access to keying
material that is not needed to perform their role." In the problem above
the role of the entity lying about its identity is an authenticator and
it is obtaining keying material necessary to perform the role of an
authenticator, it's just that it has obtained a key for a different
authenticator. I would like to see an additional requirement stating "Key
distribution protocols MUST ensure that keying material is not given to
the wrong party."

  In "Authenticate all parties" it specifically mentions different
identities being used in the AAA protocol. This is in the context of
establishment of session keys and the only problem it notes with different
identities is one of difficulty with authorization decisions. I suggest
the following paragraph be added to "Authenticate all parties":

    When a security association is used to distribute keying material
    the security association SHOULD be bound to a unique identity that
    can be commonly known by all the parties-- including the peer. If the
    security association cannot be based on such an identity then it MUST
    be statically configured to be an attribute of the security
    association.

  Then I would like to see a new section entitled "Confirm identities
when distributing keying material" which contains the following:

    When another party requires access to keying material the
    identity of that party MUST be authenticated prior to distribution
    of the keying material. The distributor MUST ensure that the
    keying material is not disclosed to the wrong party. This can be
    accomplished, for example, by verifying the identity of the party
    to whom the keying material is being disclosed with the identity
    bound to the security association under which it will be sent.

    When keying material is disclosed the other party on whose behalf
    it is being disclosed MUST confirm disclosure. For example, a peer
    MUST acknowledge disclosure of keying material from a AAA server
    to an authenticator and the identity of the authenticator MUST be
    confirmed by the peer and AAA server.

This paragraph should appear after "Authenticate all parties".

  If any of my writing is in need of wordsmithing I would be happy if
it was fixed up. But I really think something to address this subtle flaw
is needed in this draft prior to its publication as an RFC. Once again,
I apologize in not bringing my desires to the authors' attention before
it reached the IESG.

  I would appreciate hearing any comments on my suggestions and whether
they will be accepted or denied.

  thanks,

  Dan.







_______________________________________________

Ietf@xxxxxxxx
https://www1.ietf.org/mailman/listinfo/ietf


[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Fedora Users]