From owner-freebsd-questions@FreeBSD.ORG Tue Nov 11 14:49:20 2008 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7F9E41065678 for ; Tue, 11 Nov 2008 14:49:20 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (gate6.infracaninophile.co.uk [IPv6:2001:8b0:151:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id D680C8FC1F for ; Tue, 11 Nov 2008 14:49:19 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from lack-of-gravitas.thebunker.net (gateway.ash.thebunker.net [213.129.64.4]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.3/8.14.3) with ESMTP id mABEn61g051287 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 11 Nov 2008 14:49:13 GMT (envelope-from m.seaman@infracaninophile.co.uk) X-DKIM: Sendmail DKIM Filter v2.7.2 smtp.infracaninophile.co.uk mABEn61g051287 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=infracaninophile.co.uk; s=200708; t=1226414953; bh=M0N3y4RHdpBkVP nTUmwdxJtN276KRmwF5UcPnF8VZkE=; h=Message-ID:Date:From:MIME-Version: To:CC:Subject:References:In-Reply-To:Content-Type: Content-Transfer-Encoding:Cc:Content-Type:Date:From:In-Reply-To: Message-ID:Mime-Version:References:To; z=Message-ID:=20<49199B62.8 020404@infracaninophile.co.uk>|Date:=20Tue,=2011=20Nov=202008=2014: 49:06=20+0000|From:=20Matthew=20Seaman=20|Organization:=20Infracaninophile|User-Agent:=20Thunderbird= 202.0.0.17=20(X11/20081002)|MIME-Version:=201.0|To:=20John=20Almber g=20|CC:=20freebsd-questions@freebsd.org|Subj ect:=20Re:=20Disallowing=20ssl2|References:=20<7F59430C-9DD9-44F1-B 250-EB7109FBDF8B@identry.com>|In-Reply-To:=20<7F59430C-9DD9-44F1-B2 50-EB7109FBDF8B@identry.com>|X-Enigmail-Version:=200.95.6|Content-T ype:=20text/plain=3B=20charset=3DUTF-8=3B=20format=3Dflowed|Content -Transfer-Encoding:=207bit; b=TeJgoxSsSHPsQHFazIarwRCna6/YVOcdmMPhM PH1PeUUuhJyf2WtoRyxD4nvwTB5tDbNjovxDuRm0kz/136vMdXFwh4yPXDL3jplhp+V 98i5pdPQisCq/K8OpQ0JqfsoMSllSGGK1QBJLmHk/wu8bFTVJNQX9BcIBfndXn90P2I = Message-ID: <49199B62.8020404@infracaninophile.co.uk> Date: Tue, 11 Nov 2008 14:49:06 +0000 From: Matthew Seaman Organization: Infracaninophile User-Agent: Thunderbird 2.0.0.17 (X11/20081002) MIME-Version: 1.0 To: John Almberg References: <7F59430C-9DD9-44F1-B250-EB7109FBDF8B@identry.com> In-Reply-To: <7F59430C-9DD9-44F1-B250-EB7109FBDF8B@identry.com> X-Enigmail-Version: 0.95.6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (smtp.infracaninophile.co.uk [81.187.76.162]); Tue, 11 Nov 2008 14:49:13 +0000 (GMT) X-Virus-Scanned: ClamAV 0.94.1/8609/Tue Nov 11 12:53:28 2008 on happy-idiot-talk.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VERIFIED,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on happy-idiot-talk.infracaninophile.co.uk Cc: freebsd-questions@freebsd.org Subject: Re: Disallowing ssl2 X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Nov 2008 14:49:20 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: RIPEMD160 John Almberg wrote: | My server got an audit for PCI compliance and was red-flagged for | allowing SSL2 connections, which they have some problem with. They want | the server to use SSL3 or TLS: | | "Synopsis : The remote service encrypts traffic using a protocol with | known weaknesses. Description : The remote service accepts connections | encrypted using SSL 2.0, which reportedly suffers from several | cryptographic flaws and has been deprecated for several years. An | attacker may be able to exploit these issues to conduct | man-in-the-middle attacks or decrypt communications between the affected | service and clients. See also : http://www.schneier.com/paper-ssl.pdf | Solution: Consult the application's documentation to disable SSL 2.0 and | use SSL 3.0 or TLS 1.0 instead. See | http://support.microsoft.com/kb/216482 for instructions on IIS. See | http://httpd.apache.org/docs/2.0/mod/mod _ssl.html for Apache. Risk | Factor: Medium / CVSS Base Score : 2 (AV:R/AC:L/Au:NR/C:P/A:N/I:N/B:N) " | | They want me to do this for https, imaps, and pop3s protocols... | | Before I dig into this, I was wondering, is this even possible? Will | anything break as a result? It's certainly possible to insist on SSLv3 or TLSv1 for SSL connections, and nothing[*] will break. The client and server will negotiate to find a mutually acceptable cipher and protocol level at the point of making the connection. For apache2 the magic wording is: ~ SSLProtocol all -SSLv2 Note that this is conceptually distinct from choosing the cipher to use -- many of the SSLv2 ciphers are also available under SSLv3, but there's a structural problem SSLv2 which means a cipher perfectly acceptable under v3 can be broken under v2. Even so, there are a bunch of pretty useless ciphers our there, Anything with a key length less than about 40bits is essentially trivially crackable nowadays using a desktop PC. 56bit is crackable to someone with the resources of the NSA. To control the ciphers Apache allows, use something like: ~ SSLCipherSuite RSA:!EXP:!NULL:-SSLv2:+HIGH:+MEDIUM:-LOW This can combine choosing the protocol level with choosing the allowable ciphers into one handy string, if you include the appropriate terms, and if done that way means you don't also need the 'SSLProtocol' item above. Most applications that use openssl to provide crypto will let you enter a string like that somewhere. You can see what Ciphers a cipher-spec equates to by eg.: % openssl ciphers -ssl3 -v 'RSA:\!EXP:\!NULL:-SSLv2:+HIGH:+MEDIUM:-LOW' CAMELLIA256-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(256) Mac=SHA1 CAMELLIA128-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(128) Mac=SHA1 AES256-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA1 AES128-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA1 DES-CBC3-SHA SSLv3 Kx=RSA Au=RSA Enc=3DES(168) Mac=SHA1 RC4-SHA SSLv3 Kx=RSA Au=RSA Enc=RC4(128) Mac=SHA1 RC4-MD5 SSLv3 Kx=RSA Au=RSA Enc=RC4(128) Mac=MD5 This setting is known to work well with recent versions of Firefox and IE. The ciphers(1) man page will give you the gory details. Exactly how and where you specify the Cipher string depends on the software you're using. So, for example, adding the fillowing to imapd.conf will achieve the required effect with Cyrus IMAPd: tls_cipher_list: RSA:!EXP:!NULL:-SSLv2:+HIGH:+MEDIUM:-LOW Cheers, Matthew [*] Probably. - -- Dr Matthew J Seaman MA, D.Phil. Flat 3 ~ 7 Priory Courtyard PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate ~ Kent, CT11 9PW, UK -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREDAAYFAkkZm2EACgkQ3jDkPpsZ+VZcUACfX3ftpuP5Y73KJR0EFTPunmXi s3QAnjT7+P6+ns9gT+/ayk+UWyMbfvcO =d1iO -----END PGP SIGNATURE-----