re: New version of TLS + IMAP/POP/ACAP draft
Chris Newman <[email protected]> Tue, 24 Nov 1998 12:02:35 -0800 (PST)
| Newsgroups | gmane.ietf.apps-tls |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 23 Nov 1998, Mark Crispin wrote: > OK, fair enough. My proposed changes are very simple and small. I see you want to make this spec an all out attack on clear text password mechanisms in IMAP, POP and ACAP. That's fine with me under the condition that we do a complete job. First, I think it's important to prevent misleading security warnings: Clients and servers MAY generate a security warning whenever an unencrypted clear-text password mechanism is advertised or used. However, such warnings MUST be applied to all clear-text password mechanisms equally, including but not limited to the PLAIN mechanism, the IMAP4 LOGIN command and the POP3 PASS command. This is important because it prevents users from being misled into a false sense of security if they disable one unencrypted clear-text mechanism, but leave another active. Second, if we're really serious about making this spec promote the elimination of clear-text passwords, it's about time we added a capability to IMAP4 which advertises that the LOGIN command is disabled so that clients don't try it unnecessarily (this doesn't eliminate the need for clients to have a "don't use unencrypted clear-text passwords" option, but it prevents useless transmission of the password by a client in backwards-compatibility mode). ACAP doesn't have a LOGIN command, so it doesn't need this, and POP3 gets this facility from the "CAPA" command since the "USER"/"PASS" commands are optional in the base spec. So I'll add the "NOLOGIN" IMAP4 capability to the spec, which indicates either the IMAP4 LOGIN command is completely unsupported, or it's only available after STARTTLS. Finally, flatly prohibiting a server from advertising PLAIN raises the interesting security consideration of how to deal with an active attacker adding "PLAIN" to the list of available mechanisms. I'm thinking that a client MUST either ignore any advertisement of the PLAIN mechanism when no encryption layer is active, or if it is configured to generate a security warning for advertisement of unencrypted clear-text mechanisms, it will generate the same security warning for the presence of PLAIN that it does for the absense of NOLOGIN in IMAP or the presence of USER in POP3. If you agree to these conditions, Mark, I'll go ahead an make the changes you want. If you'd prefer the wording in the current spec, that's fine with me as well. > The key word is "contemporary". Note, however, that "support CRAM-MD5" does > not necessarily mean that CRAM-MD5 is desirable, due to the requirement to > store (the equivalent of) plaintext passwords on the server. Dicussing the merits of CRAM-MD5 is out-of-scope for this discussion -- although I agree there are deployment issues and concerns with using the class of mechanisms incluing CRAM-MD5, CHAP, HTTP Digest, APOP, etc. The key point is that those software developers who can't implement & release TLS for some reason _can_ implement & release CRAM-MD5 or related mechanisms, and that's exactly what's happening in practice. Thus a server which offers both CRAM-MD5 and clear-text under TLS interoperates well with recent software releases. So having the ability to turn off all clear-text mechanisms is useful at sites running only recent releases of mail clients and will only become more useful in time. > If by "option" you mean "the ability to disable all plaintext authentication", > I already have that in my server. It's a simple build option. Precisely the option I wish to promote in both clients and servers. I see no problem with it being a build option for an open-source server. I'm going to avoid responding to some of your comments publicly as I don't think it would be beneficial to the technical debate. > I'm not convinced that STARTTLS is a good idea compared to > imaps/pop3s/etc. but now that I have imaps/pop3s/etc. it wouldn't be too > hard to add STARTTLS. That's interesting, Mark. I'd like to hear your concerns. - Chris