From owner-freebsd-security@FreeBSD.ORG Thu Jul 3 16:07:41 2014 Return-Path: Delivered-To: freebsd-security@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4CE31D7; Thu, 3 Jul 2014 16:07:41 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1BBF62914; Thu, 3 Jul 2014 16:07:41 +0000 (UTC) Received: from janderson.engr.mun.ca (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s63G7c7O036433; Thu, 3 Jul 2014 16:07:39 GMT (envelope-from jonathan@FreeBSD.org) Message-ID: <53B57FC9.4080302@FreeBSD.org> Date: Thu, 03 Jul 2014 13:37:37 -0230 From: Jonathan Anderson User-Agent: Postbox 3.0.11 (Macintosh/20140602) MIME-Version: 1.0 To: Eitan Adler Subject: Re: RFC: Proposal: Install a /etc/ssl/cert.pem by default? References: <53B499B1.4090003@delphij.net> <53B4B7FB.6070407@FreeBSD.org> <53B56F49.7030109@FreeBSD.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: d@delphij.net, Ben Laurie , gecko@freebsd.org, Bryan Drewery , freebsd-security@freebsd.org, FreeBSD Ports Management Team , re , Jung-uk Kim X-BeenThere: freebsd-security@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: "Security issues \[members-only posting\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Jul 2014 16:07:41 -0000 Eitan Adler wrote: > Perhaps we should remove HTTPS support from libfetch and require the > user to install wget or curl if they want to use SSL? Having a > *default* certificate bundle (that could be removed / edited, of > course) is not necessarily even making a trust claim about a > particular cert. [0] IMHO the position where the majority of SSL on > the internet is broken by default is not tenable. > > We support HTTP. We don't support HTTPS. The browsers spend a lot of > time on this problem. We don't. I am not asserting that the Mozilla > set is perfect. I am asserting that we should have *functional* SSL > in the base system, and that using the Mozilla set is a good way to > obtain that with a good enough policy. I think it's useful to provide the *mechanism* (libfetch does validation of whatever certs you put in /usr/local/etc/ssl), I'm just saying that we should be very conservative about *policy*: we can vouch for exactly one certificate, and that's the one we control. Vendors who base their products on FreeBSD might choose to pre-populate /etc/ssl with ca-freebsd.pem and ca-vendor.pem, while people who install FreeBSD boxes can choose to install a CA bundle package to /usr/local/etc/ssl. I do see a couple of potential solutions to the "I can't fetch anything on my clean install" problem. First, we can make sure that CA bundles are in the set of packages we put on the install media, so the person installing the OS can choose to adopt the "accept whatever CAs Mozilla likes" policy (or the "accept CAs that Dr Paranoid likes" policy). Second, we could let interactive 'fetch' warn users about unrecognized CAs (different from validation failures) and prompt as to whether or not they want to continue with the fetching. That behaviour would be no worse than manually specifying --no-verify-peer, which is the logical next step when you see a missing CA error today. Jon -- Jonathan Anderson jonathan@FreeBSD.org