Re: I-D ACTION:draft-hoffman-rfc2487bis-02.txt
Jeffrey Altman <[email protected]> Mon, 13 Sep 99 10:26:58 EDT
| Newsgroups | gmane.ietf.apps-tls |
|---|---|
| Message-ID | <[email protected]> |
> At 01:13 AM 9/13/1999 +0200, Bodo Moeller wrote:
> > > The client might have to stop after the 220, such as if it realized
> > that it
> > > couldn't really start TLS. Thus, the client should be able to issue a
> > QUIT.
> > > Your proposed MUST NOT would prevent that.
> >
> >Deliberately, because forcing server implementations to be able to
> >recognize both protocols (clear SMTP and TLS handshake) complicates
> >implementation without really having any significant benefit: The 220
> >response to STARTTLS should not come as much of a surprise to the
> >client, or it should not have sent the STARTTLS command in the first
> >place.
> >
> >Is there really any (alleged) RFC 2487 server implementation that
> >continues as specified when the client sends clear SMTP commands after
> >the 220 answer to STARTTLS?
>
> These are good questions. If no one *could* handle a text QUIT at that
> point, Bodo's MUST NOT seems sensible. It would mean that, if a client
> wanted to say "whoops", the only way would be to drop the connection, but
> that is probably better than confusing the TLS stack with unexpected garbage.
I'm sorry that I have not been paying attention to this thread. The
rule is:
. if the START_TLS negotiation fails, then the server should should
drop the connection.
. if the client's policy is to allow a non-TLS connection, the client
should reconnect and refuse to negotiate START_TLS.
This is necessary because:
. after a TLS negotiation failure there is no guarrantee that the
channel has been cleared.
. allowing the automatic drop from TLS to plaintext on failure opens
the door for a man in the middle attack.
It should also be noted that any information that is exchanged before
the negotiation of START_TLS should be forgotten once START_TLS is
attempted. The list of services the server makes available over a
secure connection should not necessarily be the same as those provided
over the insecure connection.
These are the rules that are followed in the START_TLS Telnet Option.
Jeffrey Altman * Sr.Software Designer * Kermit-95 for Win32 and OS/2
The Kermit Project * Columbia University
612 West 115th St #716 * New York, NY * 10025
http://www.kermit-project.org/k95.html * [email protected]