all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
To: emacs-devel@gnu.org
Subject: removing SSLv3 support by default from the Emacs GnuTLS integration (was: Bug#766395: emacs/gnus: Uses s_client to for SSL.)
Date: Sat, 25 Oct 2014 11:49:06 -0400	[thread overview]
Message-ID: <87d29g880d.fsf_-_@lifelogs.com> (raw)
In-Reply-To: E1XhvpF-0003n1-Kk@fencepost.gnu.org

On Sat, 25 Oct 2014 03:31:49 -0400 Richard Stallman <rms@gnu.org> wrote: 

RS> In an issue of security vulnerability, giving users the right defaults
RS> is paramount.  Allowing users to customize is no substitute.
RS> Most users don't know about the issue.  We need to DTRT for them.

(changing subject, since this is not related to the original Debian bug)

The current logic is pretty simple; see `gnutls-negotiate':

         (priority-string (or priority-string
                              (cond
                               ((eq type 'gnutls-anon)
                                "NORMAL:+ANON-DH:!ARCFOUR-128")
                               ((eq type 'gnutls-x509pki)
                                (if gnutls-algorithm-priority
                                    (upcase gnutls-algorithm-priority)
                                  "NORMAL")))))

So there's definitely room for improvement there.  We can, for instance,
make it a per-host choice as we did with `gnutls-verify-error'.  But the
default value is the critical part, as you say.

So let's consider the possibilities:

1) we make the default GnuTLS priority string "SECURE256:-VERS-SSL3.0"
or "NORMAL:-VERS-SSL3.0" without waiting for the GnuTLS maintainer's
decision. This will disrupt many users' experience, especially with
self-hosted services, and may need to be changed again. It's also not
clear that it's the best course of action.

2) we wait 1 week for the GnuTLS maintainer to make a decision and
advise people to upgrade GnuTLS to the new version, adjusting our
default to match theirs.  Please comment in the GnuTLS mailing list with
your opinions.

3) we exclude SSLv3 but somehow detect when a connection is rejected
this way and offer to the user to add an exception for the current host.
This is the most complex solution and will need special care with
non-interactive Emacs runs, but is probably closest to what users
expect.  It's also very close to what Lars and I (and Toke with his TOFU
patch) were thinking of doing for `gnutls-verify-error' and certificate
management, so please review that recent thread.

My proposal is (2) now and to plan to implement (3) in November 2014.
I will dedicate time to (3) and perhaps others will, too.

IMO the work required for (3) should go into trunk and emacs-24, and it
should be a blocker for the next 24.x release. But that's a decision for
the Emacs maintainers. I'll be happy pushing my work into trunk only.

I hope this is a reasonable proposal and would appreciate your comments.

Ted




      parent reply	other threads:[~2014-10-25 15:49 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20141022193441.GA11872@roeckx.be>
2014-10-22 20:02 ` Bug#766395: emacs/gnus: Uses s_client to for SSL Rob Browning
2014-10-22 20:05   ` Rob Browning
2014-10-23 14:03     ` Ted Zlatanov
2014-10-23 15:57       ` Rob Browning
2014-10-24 13:39         ` Ted Zlatanov
2016-02-20 15:28           ` Kurt Roeckx
2016-02-21  2:47             ` Lars Ingebrigtsen
2017-02-22 20:38               ` Bug#766397: " Antoine Beaupre
2017-04-16 17:28                 ` Rob Browning
2014-10-22 20:14   ` Stefan Monnier
2014-10-22 21:02   ` Andreas Schwab
2014-10-23 16:49     ` Andreas Schwab
2014-10-23 17:29       ` Lars Magne Ingebrigtsen
2014-10-23 20:36         ` Stefan Monnier
2014-10-24  7:01           ` Lars Magne Ingebrigtsen
2014-10-27 19:42             ` Filipp Gunbin
2014-10-23 16:34   ` Richard Stallman
2014-10-23 18:00     ` Florian Weimer
2014-10-23 18:37       ` Perry E. Metzger
2014-10-23 18:43         ` Florian Weimer
2014-10-23 18:57           ` Perry E. Metzger
2014-10-23 18:59             ` Florian Weimer
2014-10-23 19:11               ` Kurt Roeckx
2014-10-23 19:42               ` Perry E. Metzger
2014-10-23 19:50                 ` Florian Weimer
2014-10-23 20:26                   ` Perry E. Metzger
2014-10-23 21:05                     ` Kurt Roeckx
2014-10-24  2:56                       ` Perry E. Metzger
2014-10-23 21:48                 ` Stephen J. Turnbull
2014-10-24  3:00                   ` Perry E. Metzger
2014-10-24 20:51                     ` Stephen J. Turnbull
2014-10-24 21:14                       ` Perry E. Metzger
2014-10-24 21:33                         ` Lars Magne Ingebrigtsen
2014-10-25  0:36                           ` Perry E. Metzger
2014-10-25 15:27                           ` Ted Zlatanov
2014-10-25 15:53                             ` Lars Magne Ingebrigtsen
2014-10-26  8:15                               ` Florian Weimer
2014-10-26 11:42                                 ` Lars Magne Ingebrigtsen
2014-10-26 12:45                                   ` Florian Weimer
2014-10-26  1:42                             ` Richard Stallman
2014-10-26  7:38                               ` Florian Weimer
2014-10-24 21:47                         ` Stephen J. Turnbull
2014-10-25  0:42                           ` Perry E. Metzger
2014-10-27 17:17                             ` Stephen J. Turnbull
2014-10-27 19:39                               ` Perry E. Metzger
2014-10-28  7:04                                 ` Stephen J. Turnbull
2014-10-28  7:45                                   ` Thien-Thi Nguyen
2014-10-28  8:44                                     ` Stephen J. Turnbull
2014-10-28 13:31                                   ` Stefan Monnier
2014-10-28 15:19                                     ` Perry E. Metzger
2014-10-28 15:33                                       ` Florian Weimer
2014-10-28 16:20                                         ` Perry E. Metzger
2014-10-28 16:52                                       ` Stefan Monnier
2014-10-28 17:11                                         ` Perry E. Metzger
2014-10-29  3:19                                       ` Stephen J. Turnbull
2014-10-28 15:10                                   ` Perry E. Metzger
2014-10-29  2:33                                     ` Stephen J. Turnbull
2014-10-29  3:06                                       ` Perry E. Metzger
2014-10-29  7:28                                         ` Stephen J. Turnbull
2014-10-29 11:19                                           ` Perry E. Metzger
2014-10-23 19:03             ` Kurt Roeckx
2014-10-24 13:35     ` Ted Zlatanov
2014-10-25  7:31       ` Richard Stallman
2014-10-25 14:33         ` Perry E. Metzger
2014-10-25 15:49         ` Ted Zlatanov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87d29g880d.fsf_-_@lifelogs.com \
    --to=tzz@lifelogs.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.