On 22/08/17 01:56, Peter wrote:
Lest anyone think STARTTLS MITM doesn't happen,

https://threatpost.com/eff-calls-out-isps-modifying-starttls-encryption-commands/109325/3/

Right, the attack does happen, but it can be prevented by properly
configuring the server and client.

Not only for security, I prefer port 993/995 as it's just plain
simpler to initiate SSL from the get-go rather than to do some
handshaking that gets you to the same point.

Simpler from a protocol perspective, yes, but not from a configuration
perspective.  A separate port requires more firewall configuration,
requires listening on more one port if you need to accept both plain
text and encrypted connections and requires that port to be allocated by
IANA.

Seriously? So one more port to allow through the firewall is somehow more complex than making sure the server and/or the client is configured to refuse falling back to plaintext communication - and testing various clients and server flavours to make absolutely sure that they do what they are supposed to be doing and don't fall for a MITM attack? At least with plain SSL/TLS ports, you know for sure that if you are connected, it is definitely encrypted.

</snip>


It would
appear that STARTTLS is significantly more vulnerable to MITM attacks
than plain SSL/TLS for all the above protocols. Is the slight extra
convenience of opportunistic encryption really worth the substantial
loss in security?

I would not say significantly.  If the client is configured to require
encryption and to validate the resulting cert from the server then any
MITM vulnerability of STARTTLS is fully mitigated.  A MITM attack is
only an issue if the client is configured for opportunistic encryption.
Note that the server side should be configured to require encryption on
as well, but the important thing is that the client requires it.

Yes - and you have a lot of "if's" above - and that is exactly what makes it more vulnerable in practice - where you have to make absolutely sure that your particular version of your particular software definitely behaves like that - while with plain SSL/TLS it just works and there is no checking needed or "if's". In real life, that makes STARTTLS less secure.

Reply via email to