Re: Man In The Middle Attacks and STARTTLS

[email protected] (Bodo Moeller) Sun, 18 Apr 1999 15:28:50 +0200
Newsgroups gmane.ietf.apps-tls
Message-ID <19990418152850.A1762@epsilon>
On Thu, Apr 15, 1999 at 05:57:17PM -0700, Paul Hoffman / IMC wrote:
> At 01:39 AM 4/16/99 +0200, Bodo Moeller wrote:

>> The discussion of authentication in RFC 2487 is rather vague, anyway.
>> The RFC defines a protocol mechanism, but does not thoroughly discuss
>> the goals that may be the reason to use this mechanism.  Depending on
>> what one is trying to achieve, things can look quite different.

> Exactly right. The reasons are briefly stated at the beginning of
> the RFC, but are left for local implementation. Just like they are
> in the main TLS RFC.

That's O.K.  It's just that sometimes the RFC suggests that you might
want to do this and might want to do that when this is true only under
certain presumptions that may or may not apply.  Re-reading all of the
RFC showed me that all-in-all, it is clear enough on that all this
depends on local policy.

>> The hints in RFC 2487 are rather fuzzy, e.g. [...]
> Not true. [...]

Well, a human can (usually) tell that the described mechism requires
taking care of certain other things, but when it is implemented in
software, often a few of the implicit assumptions are partly ignored.
So, if these considerations are discussed at all, it may pay out to be
quite explicit; or just maintain that it all depends on local policy.
As an opposite example, there's some wording that can be too strict
for certain settings:

   Both the STMP client and server must check the result of the TLS
   negotiation [...]
   The SMTP client and server should note carefully the result of the
   TLS negotiation.  [...]

This is not necessarily so, because possibly one party doesn't care a
lot whether the conversation is secured or not and offers to use TLS
only in order to securely identify itself to others if *those* insist
on it (similar to public HTTPS web-servers).  The text continues to
explain that the "decision [...] is made locally, is implementation-
dependant, and is beyond the scope of this document", all of which is
reasonable.  But as more specific suggestions are contained in the
text, I'd rather have these say "*if* the client/server wants to
assure X, it must verify Y" or something along these lines.