bug-wget
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-wget] wget sets gnutls priority multiple times


From: Tim Ruehsen
Subject: Re: [Bug-wget] wget sets gnutls priority multiple times
Date: Tue, 20 Dec 2016 14:59:08 +0100
User-agent: KMail/5.2.3 (Linux/4.8.0-2-amd64; KDE/5.28.0; x86_64; ; )

On Tuesday, December 20, 2016 12:38:18 PM CET Nikos Mavrogiannopoulos wrote:
> On Tue, 2016-12-20 at 09:26 +0100, Tim Ruehsen wrote:
> > On Monday, December 19, 2016 4:09:08 PM CET Nikos Mavrogiannopoulos
> > 
> > wrote:
> > > Hi,
> > >  While debugging some issue in Fedora [0] I've realized that wget
> > > calls
> > > the gnutls priority functions multiple times, and that confuses
> > > gnutls
> > > on certain cases. In src/gnutls.c wget calls
> > > gnutls_set_default_priority (session) which sets the default cipher
> > > priorities according to the system policy. However, at the
> > > following
> > > lines it overwrites that policy in the switch
> > > (opt.secure_protocol).
> > > 
> > > In particular, when no options are given it enters:
> > > ```
> > >     case secure_protocol_auto:
> > >       err = gnutls_priority_set_direct (session,
> > > "NORMAL:%COMPAT:-VERS-SSL3.0", NULL); ```
> > > 
> > > That means that the default policy set above is overwritten. A
> > > possible
> > > fix is attached. That ensures that the priorities are set only once
> > > and
> > > that the default priorities are used when no options are specified
> > > (the
> > > latter is important for Fedora which ensures that
> > > gnutls_set_default_priority() sets a priority string according to
> > > the
> > > system-wide policies.
> > > 
> > > The use of keyword %COMPAT is replaced by calling
> > > gnutls_session_enable_compatibility_mode().
> > 
> > Thanks, Nikos.
> > 
> > I like the idea of having a system wide TLS/security policy.
> > 
> > But what happens when wget is build with an older version of GnuTLS
> > that 
> > doesn't disable SSL3.0 by default ? Before your change, these people
> > where 
> > 'save' from using SSL, with your change applied we introduce
> > insecurity by default.
> 
> Note that disabling SSL3.0 wouldn't matter much for wget. That is, you
> do not do insecure fallbacks as browsers used to do, thus you would
> only negotiate SSL 3.0 if you share no other common protocol with the
> server (any attempt to influence that negotiation by an adversary will
> be caught during the TLS handshake).

Thanks for the patch and for restoring my memory.
I just pushed your commit.

Also, IMO people should *first* update their TLS backend and than look at the 
application code.

Regards, Tim

Attachment: signature.asc
Description: This is a digitally signed message part.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]