Re: comments on draft-ietf-ldapext-ldapv3-tls-01.txt
[email protected] Mon, 27 Jul 1998 12:02:26 -0700
| Newsgroups | gmane.ietf.apps-tls |
|---|---|
| Message-ID | <[email protected]> |
> > [email protected] said: > > > Any particular reason for not using authMethodNotSupported as the > > > resultCode in case the LDAP server does not support TLS and cannot > > > return a referral. > > > > Jeff Hodges responded: > > Yes, the reasons we designed it like this are that.. > > > - TLS isn't necessarily an authentication method. It of course ~can~ be, but > > isn't by default. > > > > - the client may be trying to send the operation to an LDAPv2 server, and it > > will hopefully respond with a protocolError -- so we're trying to keep the > > semantics consistent. > > > > Plus, a v3-capable client may ascertain whether the server it is talking with > > supports StartTLS by querying the server's root DSE for the supportedExtension > > attribute and checking to see that StartTLS is listed. > > Jonathan Trostle <[email protected]> pointed out: > Presumably the client wants to use TLS because the wire is not > trusted; how is the querying of the server's root DSE for the > supportedExtension attribute and checking for StartTLS protected? Good point, it's not protected if done before integrity and/or confidentiality is ensured on the connection. This topic has been recently discussed in terms of IMAP (see below). It seems to me that we should consider adding another subsection to section 4, along these lines... --------- 4.7 Refresh of Server Capabilities Information The client SHOULD refresh any cached server capabilities information (e.g. from the server's root DSE; see section 3.4 of [LDAPv3]) upon TLS session establishment. This is necessary to protect against active-intermediary attacks which may have altered any server capabilities information retrieved prior to TLS establishment. The server MAY advertise different capabilities after TLS establishment. --------- Although draft-newman-tls-imappop-04.txt doesn't seem to indicate the connotations of the last sentence "The server MAY advertise different capabilities after TLS establishment." It seems that that could be taken to mean that the server legitimately updated its capabilities information once TLS is started for that client, or it could mean that an active attacker mucked with the originally retrieved capabilities info. I suspect that Chris is intending the former connotation, but I'm not sure. Also, we could perhaps update the security considerations section of draft-ietf-ldapext-ldapv3-tls-01.txt to reflect user interface assertions similar to those in draft-newman-tls-imappop-04.txt's security considerations section. Also, the final sec. considerations paragraph says.. "Server implementors SHOULD allow for server administrators to elect whether and when connection confidentiality is required." ..and I think we should consider enhancing it like so.. "Server implementors SHOULD allow for server administrators to elect whether and when connection confidentiality is required, as well as elect whether and when client authentication via TLS is required." Jeff -------------------------------------------- Date: Wed, 15 Jul 1998 17:39:03 -0700 From: John Gardiner Myers <[email protected]> To: [email protected] Subject: Re: Unsolicited CAPABILITY response If the client and server negotiate a SASL security layer, it is important for the client to discard its information about server capabilities and re-issue the CAPABILITY command. Otherwise, an active attacker could fool the client by inserting or modifying a CAPABILITY response before authentication completes. For this reason, the STARTTLS extension in draft-newman-tls-imappop-04.txt explicitly modifies the don't-change-CAPABILITIES requirement of the base IMAP specification. -------------------------------------------- Date: Thu, 16 Jul 1998 15:59:18 -0700 (PDT) From: Chris Newman <[email protected]> To: [email protected] Subject: Re: Unsolicited CAPABILITY response On Wed, 15 Jul 1998, John Gardiner Myers wrote: > If the client and server negotiate a SASL security layer, it is > important for the client to discard its information about server > capabilities and re-issue the CAPABILITY command. Otherwise, an active > attacker could fool the client by inserting or modifying a CAPABILITY > response before authentication completes. For this reason, the STARTTLS > extension in draft-newman-tls-imappop-04.txt explicitly modifies the > don't-change-CAPABILITIES requirement of the base IMAP specification. That draft only waives the requirement after the "STARTTLS" command is issued: Once TLS has been started, the client SHOULD discard cached information about server capabilities and re-issue the CAPABILITY command. This is necessary to protect against man-in-the-middle attacks which alter the capabilities list prior to STARTTLS. The server MAY advertise different capabilities after STARTTLS. Since the purpose of STARTTLS is to protect against active attacks, it would defeat the purpose if the client trusted information from before the STARTTLS command. The last sentence is added incentive to do the right thing. Incidentally, this language needs to be put in the base spec for the case where a security layer is negotiated by SASL, for the same reason. - Chris --------------------------------------------