Skip to main content

RADIUS Extension for Digest Authentication
draft-ietf-radext-digest-auth-09

Revision differences

Document history

Date Rev. By Action
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Scott Hollenbeck
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Jon Peterson
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Sam Hartman
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Mark Townsley
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Russ Housley
2006-06-05
09 Amy Vezza State Changes to RFC Ed Queue from Approved-announcement sent by Amy Vezza
2006-05-31
09 Amy Vezza IESG state changed to Approved-announcement sent
2006-05-31
09 Amy Vezza IESG has approved the document
2006-05-31
09 Amy Vezza Closed "Approve" ballot
2006-05-31
09 David Kessens State Changes to Approved-announcement to be sent from IESG Evaluation::AD Followup by David Kessens
2006-05-30
09 Sam Hartman [Ballot Position Update] Position for Sam Hartman has been changed to No Objection from Discuss by Sam Hartman
2006-05-30
09 Jon Peterson [Ballot Position Update] Position for Jon Peterson has been changed to No Objection from Discuss by Jon Peterson
2006-05-25
09 Magnus Westerlund [Ballot Position Update] New position, No Objection, has been recorded for Magnus Westerlund by Magnus Westerlund
2006-05-25
09 Cullen Jennings [Ballot Position Update] New position, No Objection, has been recorded for Cullen Jennings by Cullen Jennings
2006-05-22
09 (System) New version available: draft-ietf-radext-digest-auth-09.txt
2006-04-25
09 Mark Townsley [Ballot Position Update] Position for Mark Townsley has been changed to No Objection from Discuss by Mark Townsley
2006-04-19
08 (System) New version available: draft-ietf-radext-digest-auth-08.txt
2006-03-09
09 Russ Housley [Ballot Position Update] Position for Russ Housley has been changed to No Objection from Discuss by Russ Housley
2006-03-08
09 Scott Hollenbeck [Ballot Position Update] Position for Scott Hollenbeck has been changed to No Objection from Discuss by Scott Hollenbeck
2006-03-08
09 (System) Sub state has been changed to AD Follow up from New Id Needed
2006-03-08
07 (System) New version available: draft-ietf-radext-digest-auth-07.txt
2005-12-15
09 Amy Vezza State Changes to IESG Evaluation::Revised ID Needed from IESG Evaluation by Amy Vezza
2005-12-15
09 Sam Hartman
[Ballot discuss]
I don't think the security considerations surrounding client nonce
generation are correct.  In particular, I believe the security of
digest authentication depends on …
[Ballot discuss]
I don't think the security considerations surrounding client nonce
generation are correct.  In particular, I believe the security of
digest authentication depends on the server choosing a fresh nonce to
prevent replays.  Take a look at section 3 in
draft-ietf-sasl-rfc2831bis.  In the case where the RADIUS client
chooses the nonce then the RADIUS client is being trusted to avoid
these attacks.  In many environments the load considerations which
seem to be the primary motivation for client nonces in this spec would
not justify that trust.

Please either explain to me why these concerns do not exist or
document them.  If these concerns exist, then please add a
recommendation for server nonces in cases where load is not an issue.

If there are attacks that can be mounted when client nonces are
used,servers need to offer a configuration in which client nonces are
refused; this is not provided by the current server behavior.



I don't believe a normative reference to RFC 3310 is appropriate.  RFC
3310
is very clearly not a standards-track protocol.
2005-12-15
09 Russ Housley
[Ballot comment]
Please include an informative reference for CHAP in section 1.3.

  Section 3.1 says:
  >
  > The RADIUS server MAY have …
[Ballot comment]
Please include an informative reference for CHAP in section 1.3.

  Section 3.1 says:
  >
  > The RADIUS server MAY have added a Digest-Nextnonce attribute into an
  > Access-Accept packet.  If the RADIUS client discovers this, it puts
  > the contents of this attribute into a 'nextnonce' directive.  Now it
  > can send an HTTP-style response.
  >
  Perhaps a better wording might be:
  >
  > When the RADIUS server provides a Digest-Nextnonce attribute in the
  > Access-Accept packet, the RADIUS client puts the contexts of this
  > attribute into a 'nextnonce' directive so that it can send an
  > HTTP-style response.

  Section 4.9 says:
  >
  >4.9.  Digest-Algorithm attribute
  >
  >  Type
  >
  s/Type/Description/

  Section 4.20 says:
  >
  >4.20.  SIP-AOR
  >
  >  Type
  >
  s/Type/Description/

  Section 7 says:
  >
  > A->B
  >
  >    INVITE sip:97226491335@example.com SIP/2.0
  >    Proxy-Authorization: Digest algorithm="md5",nonce="3bada1a0"
  >        ,opaque="",realm="example.com"
  >        ,response="f3ce87e6984557cd0fecc26f3c5e97a4"
  >        ,uri="sip:97226491335@10.0.69.38",username="12345678"
  >    From:
  >    To:
  >
  > B->C
  >
  >    Code = 1 (Access-Request)
  >    Attributes:
  >    NAS-IP-Address = a 0 45 26 (10.0.69.38)
  >    NAS-Port-Type = 5 (Virtual)
  >    User-Name = "12345678"
  >    Digest-Response = "f3ce87e6984557cd0fecc26f3c5e97a4"
  >    Digest-Realm = "example.com"
  >    Digest-Nonce = "3bada1a0"
  >    Digest-Method = "INVITE"
  >    Digest-URI = "sip:97226491335@example.com"
  >
  Why is the value of Digest-URI not the same URI provided by A?
2005-12-15
09 Russ Housley
[Ballot discuss]
Section 2 says:
  >
  > As there is no automatic capability exchange, the operator MUST
  > make sure that the …
[Ballot discuss]
Section 2 says:
  >
  > As there is no automatic capability exchange, the operator MUST
  > make sure that the RADIUS client software uses the correct nonce
  > generation mode when accessing a specific RADIUS server:
  >
  This use of "MUST" does not seem right to me.  The "operator" is a
  human, so it does not seem like a situation covered by RFC 2119.

  Section 3.1 says:
  >
  > It puts the 'response' directive into a Digest-Response attribute
  > and the realm / nonce / digest-uri / qop / algorithm / cnonce / nc /
  > username / opaque directives into the respective Digest-Realm /
  > Digest-Nonce / Digest-URI / Digest-Qop / Digest-Algorithm /
  > Digest-CNonce / Digest-Nonce-Count / Digest-Username / Digest-Opaque
  > attributes.
  >
  What does the slash character (/) signify?  In ABNF, the slash
  character separates choices, but that does not seem to be the right
  context.  I think that "respective" is key to understanding this
  sentence.  Please reword.  I find it very confusing.

  Section 4.2 says:
  >
  > This attribute describes a protection space of the RADIUS server.
  > See [RFC2617] 1.2 for details.  It MUST only be used in Access-Request
  > and Access-Challenge packets.
  >
  Section 1 says that a protection space is the combination of realm and
  digest URI, but this says this text only includes a Realm.  Is this
  attribute used in conjunction with something else to determine the
  protection space?

  Section 4.7 says:
  >
  > If the HTTP-style request has an Authorization header, the RADIUS
  > client puts the value of the "uri" directive in the (known as
  > "digest-uri-value" in section 3.2.2 of [RFC2617]) without quotes
  > into this attribute.
  >
  Are the quote characters removed?  I do not think that is the intended
  meaning.  Perhaps it should say: "without quoting."
2005-12-15
09 Russ Housley [Ballot Position Update] New position, Discuss, has been recorded for Russ Housley by Russ Housley
2005-12-15
09 Michelle Cotton
IANA Comments:
Upon approval of this document the IANA will assign numerous RADIUS Attribute Type values in the following registry:
http://www.iana.org/assignments/radius-types

The first of the …
IANA Comments:
Upon approval of this document the IANA will assign numerous RADIUS Attribute Type values in the following registry:
http://www.iana.org/assignments/radius-types

The first of the suggested values appears to be already assigned.  Will this cause any issues for the Authors?
2005-12-15
09 Bert Wijnen [Ballot Position Update] Position for Bert Wijnen has been changed to No Objection from Undefined by Bert Wijnen
2005-12-15
09 Bert Wijnen
[Ballot comment]
Page 26
      NAS-IP-Address = a 0 45 26 (10.0.69.38)
Probably IP address should be changed to be in accordance with …
[Ballot comment]
Page 26
      NAS-IP-Address = a 0 45 26 (10.0.69.38)
Probably IP address should be changed to be in accordance with
IP addresses for examples (RFC3330), i.e. 192.0.2.0/24 range
2005-12-15
09 Bert Wijnen [Ballot Position Update] New position, Undefined, has been recorded for Bert Wijnen by Bert Wijnen
2005-12-15
09 Mark Townsley
[Ballot discuss]
Comments from Glen Zorn:

Although the document goes into great detail about the behavior required from RADIUS clients & servers, it's not at …
[Ballot discuss]
Comments from Glen Zorn:

Although the document goes into great detail about the behavior required from RADIUS clients & servers, it's not at all clear to me how it would work in a proxied network, esp. one supporting roaming.

Basically this doc seems to assume that the RADIUS client is in a realm in which the SIP (for example) user holds valid credentials.  Since I've avoided SIP (& HTTP, for that matter), I can't really say whether that's actually true or not.  Maybe the SIP proxies route requests in that way. 

In any case, there is a more serious flaw in the protocol, in that it seems to perpetuate one of the classic attacks against CHAP w/RADIUS (the attack doesn't work against standalone CHAP).  The attack is enabled by the RADIUS client's generation of challenges & can result in difficult to detect theft of service.  The attack goes like this:

1) Crack the SIP server/RADIUS client, installing a local user (say, AttkVrizn) & modifying the software to keep a small table of valid user names, challenges & responses.
2) Connect to the SIP server as AttkVrizn (possibly authenticating to keep others from poaching).  The RADIUS client then "authenticates" one of the users in the table to the RADIUS server using the stored challenge & response -- if the challenges are just pseudo-random numbers (as specified in this draft), there is no way (short of keeping a list of every challenge it's ever seen) for it to know that the challenges & responses are old.  This will start a session under the victim's name & she will be charged for the service provided to AttkVrizn; the only way I know of to detect it is either through a software audit of the SIP server/RADIUS client or through the victim's diligent monitoring of their bill.
2005-12-15
09 Mark Townsley [Ballot Position Update] New position, Discuss, has been recorded for Mark Townsley by Mark Townsley
2005-12-15
09 Bill Fenner [Ballot Position Update] New position, No Objection, has been recorded for Bill Fenner by Bill Fenner
2005-12-14
09 Alex Zinin [Ballot Position Update] New position, No Objection, has been recorded for Alex Zinin by Alex Zinin
2005-12-14
09 Sam Hartman
[Ballot discuss]
I don't think the security considerations surrounding client nonce
generation are correct.  In particular, I believe the security of
digest authentication depends on …
[Ballot discuss]
I don't think the security considerations surrounding client nonce
generation are correct.  In particular, I believe the security of
digest authentication depends on the server choosing a fresh nonce to
prevent replays.  Take a look at section 3 in
draft-ietf-sasl-rfc2831bis.  In the case where the RADIUS client
chooses the nonce then the RADIUS client is being trusted to avoid
these attacks.  In many environments the load considerations which
seem to be the primary motivation for client nonces in this spec would
not justify that trust.

Please either explain to me why these concerns do not exist or
document them.  If these concerns exist, then please add a
recommendation for server nonces in cases where load is not an issue.

If there are attacks that can be mounted when client nonces are
used,servers need to offer a configuration in which client nonces are
refused; this is not provided by the current server behavior.
2005-12-14
09 Sam Hartman [Ballot Position Update] New position, Discuss, has been recorded for Sam Hartman by Sam Hartman
2005-12-14
09 Margaret Cullen [Ballot Position Update] New position, No Objection, has been recorded for Margaret Wasserman by Margaret Wasserman
2005-12-14
09 Jon Peterson
[Ballot discuss]
The HTTP example in Section 7 shows a WWW-Authenticate header in a 407 response and an Authorization in the reissued GET. Shouldn't a …
[Ballot discuss]
The HTTP example in Section 7 shows a WWW-Authenticate header in a 407 response and an Authorization in the reissued GET. Shouldn't a 407 contain a Proxy-Authenticate, and the reissued get a Proxy-Authorization? Or perhaps the authors intended this to be a 401, as the sentence of explanatory text prior to the example does not suggest the presence of a proxy.
2005-12-14
09 Jon Peterson [Ballot Position Update] Position for Jon Peterson has been changed to Discuss from Yes by Jon Peterson
2005-12-14
09 Jon Peterson [Ballot Position Update] Position for Jon Peterson has been changed to Yes from Undefined by Jon Peterson
2005-12-14
09 Jon Peterson
[Ballot comment]
The authors might note, contrary to impllication of the motivational text in 1.2, that RFC3261 did not intend to supplant Digest authentication with …
[Ballot comment]
The authors might note, contrary to impllication of the motivational text in 1.2, that RFC3261 did not intend to supplant Digest authentication with TLS and S/MIME. Digest is still mandatory and is the preferred way for a UA to authenticate itself to a proxy server. This just furthers the need for this mechanism, of course - the text in 1.2 makes it sound like Digest a legacy mechanism for SIP.
2005-12-14
09 Jon Peterson
[Ballot comment]
The authors might note, contrary to impllication of the motivational text in 1.2, that RFC3261 did not intend to supplant Digest authentication with …
[Ballot comment]
The authors might note, contrary to impllication of the motivational text in 1.2, that RFC3261 did not intend to supplant Digest authentication with TLS and S/MIME. Digest is still mandatory and is the preferred way for a UA to authenticate itself to a proxy server. This just furthers the need for this mechanism, of course - the text in 1.2 makes it sound like Digest a legacy mechanism for SIP.
2005-12-14
09 Jon Peterson [Ballot Position Update] New position, Undefined, has been recorded for Jon Peterson by Jon Peterson
2005-12-14
09 Brian Carpenter [Ballot Position Update] New position, No Objection, has been recorded for Brian Carpenter by Brian Carpenter
2005-12-12
09 Ted Hardie [Ballot Position Update] New position, No Objection, has been recorded for Ted Hardie by Ted Hardie
2005-12-12
09 (System) State Changes to IESG Evaluation from IESG Evaluation - Defer by system
2005-12-02
09 (System) Removed from agenda for telechat - 2005-12-01
2005-11-29
09 Sam Hartman State Changes to IESG Evaluation - Defer from IESG Evaluation by Sam Hartman
2005-11-26
09 Allison Mankin [Ballot Position Update] New position, Yes, has been recorded for Allison Mankin by Allison Mankin
2005-11-23
09 Scott Hollenbeck
[Ballot discuss]
Section 4 includes notes to IANA that should probably be included or referenced in the "IANA Considerations" section.  An example:

"[IANA: use 102 …
[Ballot discuss]
Section 4 includes notes to IANA that should probably be included or referenced in the "IANA Considerations" section.  An example:

"[IANA: use 102 if possible]"

It might be helpful to add a sentence to the IANA Considerations section to tell someone to look in section 4 for these requested assignments.  It might also be helpful to be more specific about which registry the values are being assigned to.
2005-11-23
09 Scott Hollenbeck
[Ballot discuss]
Section 4 includes notes to IANA that should probably be included or referenced in the "IANA Considerations" section.  An example:

"[IANA: use 102 …
[Ballot discuss]
Section 4 includes notes to IANA that should probably be included or referenced in the "IANA Considerations" section.  An example:

"[IANA: use 102 if possible]"

It might be helpul to add a sentence to the IANA Considerations section to tell someome to look in section 4 for these requested assignments.  It might also be helpful to be more specific about which registry the values are being assigned to.
2005-11-23
09 Scott Hollenbeck [Ballot Position Update] New position, Discuss, has been recorded for Scott Hollenbeck by Scott Hollenbeck
2005-11-20
09 David Kessens [Note]: 'Note: Bernard Aboba is the proto shepherd' added by David Kessens
2005-11-20
09 David Kessens State Changes to IESG Evaluation from Waiting for Writeup by David Kessens
2005-11-20
09 David Kessens Placed on agenda for telechat - 2005-12-01 by David Kessens
2005-11-20
09 David Kessens [Ballot Position Update] New position, Yes, has been recorded for David Kessens
2005-11-20
09 David Kessens Ballot has been issued by David Kessens
2005-11-20
09 David Kessens Created "Approve" ballot
2005-10-27
06 (System) New version available: draft-ietf-radext-digest-auth-06.txt
2005-10-07
09 (System) State has been changed to Waiting for Writeup from In Last Call by system
2005-09-23
09 Amy Vezza Last call sent
2005-09-23
09 Amy Vezza State Changes to In Last Call from Last Call Requested by Amy Vezza
2005-09-22
09 David Kessens Last Call was requested by David Kessens
2005-09-22
09 David Kessens State Changes to Last Call Requested from Publication Requested by David Kessens
2005-09-22
09 (System) Ballot writeup text was added
2005-09-22
09 (System) Last call text was added
2005-09-22
09 (System) Ballot approval text was added
2005-09-13
09 Dinara Suleymanova Draft Added by Dinara Suleymanova in state Publication Requested
2005-09-12
05 (System) New version available: draft-ietf-radext-digest-auth-05.txt
2005-08-30
04 (System) New version available: draft-ietf-radext-digest-auth-04.txt
2005-07-21
03 (System) New version available: draft-ietf-radext-digest-auth-03.txt
2005-04-15
02 (System) New version available: draft-ietf-radext-digest-auth-02.txt
2005-02-21
01 (System) New version available: draft-ietf-radext-digest-auth-01.txt
2004-12-09
00 (System) New version available: draft-ietf-radext-digest-auth-00.txt