Get rid of "Use encryption if available" (opportunistic StartTLS) in XMPP.
Categories
(Chat Core :: XMPP, enhancement)
Tracking
(Not tracked)
People
(Reporter: poddebniak, Unassigned)
Details
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0
Steps to reproduce:
Try to create a new XMPP account.
Actual results:
XMPP/OTR Wizard still has "Use encryption if available" in "Connection security" dropdown.
Expected results:
That option should not be there anymore :-)
Comment 1•5 years ago
|
||
This option is unrelated to OTR. It is about whether STARTTLS is required and whether PLAIN passwords can be used. Why do you think this option should be removed?
Comment 2•5 years ago
|
||
"if available" is insecure.
For mail the "STARTTLS, if available" has been hidden from the UI (unless you have an old enough profile that you had it set). The normal STARTTLS is secure - and will fail if the upgrade to use TLS doesn't happen.
Comment 3•5 years ago
|
||
(In reply to Magnus Melin [:mkmelin] from comment #2)
"if available" is insecure.
For mail the "STARTTLS, if available" has been hidden from the UI (unless you have an old enough profile that you had it set). The normal STARTTLS is secure - and will fail if the upgrade to use TLS doesn't happen.
Sure, but that's not what the original report says. Requiring TLS is probably sane for most deployments now.
| Reporter | ||
Comment 4•5 years ago
|
||
There are three options: "no encryption", "encryption if available" and "use encryption". I am not sure what those options really do, but "if available" looks like "opportunistic STARTTLS". This option will try to upgrade the encryption via the STARTTLS command, but only if the server supports it. If not, the password will be send in the clear. This mechanism is insecure against active attacks and should be replaced by "STARTTLS", which will fail with a warning in case the upgrade to encryption is not possible.
Sorry for being so imprecise.
Comment 5•4 years ago
|
||
Seems reasonable, removing it from the UI is easy (and if an unknown option is chosen it seems to just default to blank, which is OK). Would need a bit of investigation for how the backend works if the value is unknown.
Comment 8•1 year ago
|
||
https://searchfox.org/comm-central/rev/7dc5369bf3077847beeebd416fef1edb6871eaae/chat/protocols/xmpp/xmpp-session.sys.mjs#32
https://searchfox.org/comm-central/rev/7dc5369bf3077847beeebd416fef1edb6871eaae/chat/protocols/xmpp/xmpp-session.sys.mjs#395
Looks like it's indeed opportunistic, and thus unsafe.
Updated•1 year ago
|
Description
•