Last modified: 2014-11-20 23:59:13 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T55259, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 53259 - Add Forward Secrecy
Add Forward Secrecy
Status: PATCH_TO_REVIEW
Product: Wikimedia
Classification: Unclassified
SSL related (Other open bugs)
wmf-deployment
All All
: Normal enhancement (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-08-23 16:46 UTC by michael+wmbugs
Modified: 2014-11-20 23:59 UTC (History)
12 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description michael+wmbugs 2013-08-23 16:46:43 UTC
Forward Secrecy capable ciphers are not currently available on wikipedia.org. The only ciphers available on wikipedia.org are:

* SSL_RSA_WITH_RC4_128_SHA
* SSL_RSA_WITH_RC4_128_MD5
* SSL_RSA_WITH_3DES_EDE_CBC_SHA
* TLS_RSA_WITH_AES_128_CBC_SHA
* TLS_RSA_WITH_AES_256_CBC_SHA

source, https://www.ssllabs.com/ssltest/analyze.html?d=en.wikipedia.org

None of which offer Forward Secrecy.

Could this please be added to wikipedia's servers?
Comment 1 Andre Klapper 2013-08-26 10:00:26 UTC
Where can I find more information? 
https://en.wikipedia.org/wiki/Perfect_forward_secrecy ?
Comment 2 Seb35 2013-08-29 08:27:04 UTC
The blog post [1] explains the "forward secrecy" property only adds a +15% in CPU load for ECDHE ciphers, but +300% for simple DHE ciphers. Probably the Operations team should carefully review this bug before activating it for performance reasons. Nowadays only Chromium and Firefox support FS, Opera only supports DHE ciphers and Internet Explorer don’t support FS; I don’t know for Safari.

This other blog post [2] (and blog) explains how Google configured FS: why they chosed ECDHE (this performance reason) and how they configured session tickets.

[1] http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html
[2] https://www.imperialviolet.org/2011/11/22/forwardsecret.html
Comment 3 ondrej.sered 2013-12-11 09:56:00 UTC
Google is already supporting Forward Secrecy for SSL connections.

The deployment of Forward Secrecy muss be done carefully, especialy when SSL session IDs are used. But SSL session IDs can help reduce the overhead of Forward Secrecy:

https://www.imperialviolet.org/2013/06/27/botchingpfs.html
http://blog.ivanristic.com/2013/06/ssl-labs-deploying-forward-secrecy.html
http://blog.ivanristic.com/2013/08/configuring-apache-nginx-and-openssl-for-forward-secrecy.html
http://blog.ivanristic.com/2013/08/increasing-dhe-strength-on-apache.html

There have been some questions about backdoors in ECDHE ciphers:

https://crypto.stackexchange.com/questions/10263/should-we-trust-the-nist-recommended-ecc-parameters
Comment 4 Nemo 2013-12-20 10:37:30 UTC
According to https://wikitech.wikimedia.org/wiki/HTTPS/Future_work this is in the plans already (second bullet), adjusting fields.
Comment 5 Jan Zerebecki 2014-05-10 12:05:08 UTC
https://gerrit.wikimedia.org/r/#/c/132393/
Comment 6 Gerrit Notification Bot 2014-05-22 05:11:28 UTC
Change 132393 had a related patch set uploaded by MZMcBride:
Improve nginx TLS/SSL settings.

https://gerrit.wikimedia.org/r/132393
Comment 7 Nemo 2014-06-27 23:19:16 UTC
Giuseppe tested the settings, proving the load is not a problem, and thanks to this the change is now scheduled for next week!
https://wikitech.wikimedia.org/wiki/Deployments#deploycal-item-20140701T1000
Comment 8 Ori Livneh 2014-06-28 00:05:16 UTC
The load may not be a problem for our servers, but I'd like to know whether there is a potential impact on user experience, and whether an attempt has been made to quantify it.
Comment 9 Gerrit Notification Bot 2014-07-01 10:04:02 UTC
Change 132393 merged by Giuseppe Lavagetto:
Improve nginx TLS cipher list & session timeout

https://gerrit.wikimedia.org/r/132393
Comment 10 matanya 2014-07-01 10:56:38 UTC
The change is now live. Thanks Giuseppe!
Comment 11 Jan Zerebecki 2014-07-01 12:25:37 UTC
For the potential impact on HTTPS clients Chris Steipp told me on IRC he looked into what I assume is EventLogging data and later told me that Oliver had done some analysis work on that. I wanted to ask Oliver if he could publish his queries (or SQL and R code or whatever he used), but haven't yet done so (feel free to do that). The idea was also to compare before and after deployment. It would be interesting if we could publish an aggregated and anonymized analysis of the before and after comparison.
Comment 12 Nemo 2014-07-01 12:55:35 UTC
(In reply to Jan Zerebecki from comment #11)
> It would be interesting if we could publish an aggregated
> and anonymized analysis of the before and after comparison.

You know about:
* https://gdash.wikimedia.org/dashboards/frontend/ ,
* http://ur1.ca/hn8fi
* and any other graphite graph you may desire,
don't you?
Comment 13 Jan Zerebecki 2014-07-01 19:17:55 UTC
None of those on gdash differentiate between HTTP and HTTPS. I do not have full graphite access, so the ability to create something that might help may exist.
Comment 14 chmarkine 2014-07-04 11:35:29 UTC
gerrit.wikimedia.org still does not support Forward Secrecy.

* https://www.ssllabs.com/ssltest/analyze.html?d=gerrit.wikimedia.org
Comment 15 chmarkine 2014-07-04 11:44:18 UTC
wikitech.wikimedia.org also doesn't support Forward Secrecy. 

More importantly, SSL Labs says Wikitech server is "vulnerable to the OpenSSL CCS vulnerability (CVE-2014-0224) and exploitable".

* https://www.ssllabs.com/ssltest/analyze.html?d=wikitech.wikimedia.org
Comment 16 Sam Reed (reedy) 2014-07-04 12:05:51 UTC
(In reply to chmarkine from comment #15)
> wikitech.wikimedia.org also doesn't support Forward Secrecy. 
> 
> More importantly, SSL Labs says Wikitech server is "vulnerable to the
> OpenSSL CCS vulnerability (CVE-2014-0224) and exploitable".
> 
> * https://www.ssllabs.com/ssltest/analyze.html?d=wikitech.wikimedia.org

F to A- now
Comment 17 Jan Zerebecki 2014-07-04 15:26:52 UTC
Yes and there are more sites that still lack forward secrecy. Now that there is an acceptable configuration with FS we can just apply that one to them. Some like wikitech and gerrit can probably use one that is less backwards compatible (like no SSL3, disable RC4, difficult: disable non-fs ciphers).
Comment 18 chmarkine 2014-07-05 08:52:29 UTC
I agree with Jan. I think disabling SSL3 and non-fs ciphers is feasible, because only IE 6-8 on XP do not support any FS ciphers, only IE 6 does not support TLS 1.0 or higher, and even IE 7 on Vista supports ECDHE.

Also ticket.wikimedia.org does not support PFS. So all together:
* gerrit.wikimedia.org
* wikitech.wikimedia.org
* ticket.wikimedia.org

https://www.ssllabs.com/ssltest/analyze.html?d=ticket.wikimedia.org
Comment 19 chmarkine 2014-07-05 09:22:51 UTC
I just find more and more sites with no FS:

* gerrit.wikimedia.org
* wikitech.wikimedia.org
* ticket.wikimedia.org
* lists.wikimedia.org
* dumps.wikimedia.org
* graphite.wikimedia.org
* gdash.wikimedia.org

Again, graphite.wikimedia.org, gdash.wikimedia.org and dumps.wikimedia.org are "vulnerable to the OpenSSL CCS vulnerability (CVE-2014-0224) and exploitable".

lists.wikimedia.org is "vulnerable to the OpenSSL CCS vulnerability (CVE-2014-0224), but probably not exploitable", and lists.wikimedia.org does not support TLS 1.1 and TLS 1.2.

[1] https://www.ssllabs.com/ssltest/analyze.html?d=graphite.wikimedia.org (F)
[2] https://www.ssllabs.com/ssltest/analyze.html?d=gdash.wikimedia.org (F)
[3] https://www.ssllabs.com/ssltest/analyze.html?d=dumps.wikimedia.org (F)
[4] https://www.ssllabs.com/ssltest/analyze.html?d=lists.wikimedia.org (B)
Comment 20 chmarkine 2014-07-06 11:59:49 UTC
See also: https://bugzilla.wikimedia.org/show_bug.cgi?id=67564
Comment 21 Daniel Zahn 2014-07-08 18:11:53 UTC
meanwhile dumps and lists have been fixed it seems

dumps.wikimedia.org
 Experimental: This server is not vulnerable to the OpenSSL CCS vulnerability (CVE-2014-0224). 


lists.wikimedia.org
 Experimental: This server is not vulnerable to the OpenSSL CCS vulnerability (CVE-2014-0224).
Comment 22 Nemo 2014-07-08 18:20:32 UTC
It's a bit unpractical to have one comment for each domain. Jan and chmarkine, it would be IMHO more useful if you resurrected https://wikitech.wikimedia.org/wiki/Httpsless_domains to make a table of which domains have https but lack PFS.
Comment 23 Gerrit Notification Bot 2014-07-08 18:40:20 UTC
Change 144731 had a related patch set uploaded by Dzahn:
update SSL cipher list for gerrit to support PFS

https://gerrit.wikimedia.org/r/144731
Comment 24 Gerrit Notification Bot 2014-07-08 18:51:17 UTC
Change 144734 had a related patch set uploaded by Dzahn:
update SSL cipher list for OTRS to support PFS

https://gerrit.wikimedia.org/r/144734
Comment 25 Gerrit Notification Bot 2014-07-08 18:57:12 UTC
Change 144736 had a related patch set uploaded by Dzahn:
update SSL cipher list on wikitech to support PFS

https://gerrit.wikimedia.org/r/144736
Comment 26 Daniel Zahn 2014-07-08 19:26:54 UTC
all services behind the misc. varnish cluster should be fixed now. they were lacking an nginx restart on cp1043/cp1044, which i did now

this should have fixed all these:

doc			
git			
gdash			
graphite		
parsoid-tests		
performance		
integration		
releases		
legalpad		
logstash		
scholarships
Comment 27 Gerrit Notification Bot 2014-07-08 20:03:29 UTC
Change 144731 merged by Dzahn:
update SSL cipher list for gerrit to support PFS

https://gerrit.wikimedia.org/r/144731
Comment 28 chmarkine 2014-07-09 07:40:58 UTC
(In reply to Nemo from comment #22)
> It's a bit unpractical to have one comment for each domain. Jan and
> chmarkine, it would be IMHO more useful if you resurrected
> https://wikitech.wikimedia.org/wiki/Httpsless_domains to make a table of
> which domains have https but lack PFS.

I made such a list: https://wikitech.wikimedia.org/wiki/User:Chmarkine/HTTPS

It summarizes support status for Forward Secrecy and HSTS. It also shows protocol versions, whether HTTP redirects to HTTPS, links to SSL Labs and SSL Labs grades.

It is an incomplete list. Please feel free to update it or move it to main namespace, if you want!
Comment 29 Daniel Zahn 2014-07-10 14:54:10 UTC
also see the older wiki page that just focused on domains without https

https://wikitech.wikimedia.org/wiki/Httpsless_domains
Comment 30 Daniel Zahn 2014-07-10 22:43:35 UTC
chmarkine: very nice list, thanks!

I just wanted to add that even though i have those (partly pending) patches to enable it on gerrit,wikitech,otrs ..it will not actually work before Apache is also a 2.4 version. But do you agree i should merge already anyways,based on it being an improvement anyways? Then it would just automatically be supported as soon as Apache will be upgraded.
Comment 31 chmarkine 2014-07-11 02:56:21 UTC
(In reply to Daniel Zahn from comment #30)
> chmarkine: very nice list, thanks!
> 
> I just wanted to add that even though i have those (partly pending) patches
> to enable it on gerrit,wikitech,otrs ..it will not actually work before
> Apache is also a 2.4 version. But do you agree i should merge already
> anyways,based on it being an improvement anyways? Then it would just
> automatically be supported as soon as Apache will be upgraded.

I agree! I think we should definitely merge them.
Comment 32 Gerrit Notification Bot 2014-07-11 18:03:52 UTC
Change 144734 merged by Dzahn:
update SSL cipher list for OTRS to support PFS

https://gerrit.wikimedia.org/r/144734
Comment 33 Gerrit Notification Bot 2014-07-11 20:29:17 UTC
Change 144736 merged by Dzahn:
update SSL cipher list on wikitech to support PFS

https://gerrit.wikimedia.org/r/144736
Comment 34 Gerrit Notification Bot 2014-07-15 18:39:34 UTC
Change 146510 had a related patch set uploaded by Chmarkine:
update SSL ciphers for contacts.wm.org to support PFS

https://gerrit.wikimedia.org/r/146510
Comment 35 Gerrit Notification Bot 2014-07-16 16:56:21 UTC
Change 146510 merged by Dzahn:
update SSL ciphers for contacts.wm.org to support PFS

https://gerrit.wikimedia.org/r/146510
Comment 36 Gerrit Notification Bot 2014-07-17 14:26:31 UTC
Change 147110 had a related patch set uploaded by Chmarkine:
update SSL ciphers for Ganglia to support PFS

https://gerrit.wikimedia.org/r/147110
Comment 37 Gerrit Notification Bot 2014-07-17 15:34:56 UTC
Change 147123 had a related patch set uploaded by Chmarkine:
update SSL ciphers for noc.wikimedia.org to support PFS

https://gerrit.wikimedia.org/r/147123
Comment 38 Gerrit Notification Bot 2014-07-17 15:54:07 UTC
Change 147110 merged by Dzahn:
update SSL ciphers for Ganglia to support PFS

https://gerrit.wikimedia.org/r/147110
Comment 39 Daniel Zahn 2014-07-17 16:39:11 UTC
Why does ganglia still get a B from Qualys SSL Labs after the change, while others are fine?
Comment 40 Gerrit Notification Bot 2014-07-17 17:05:05 UTC
Change 147123 merged by Dzahn:
update SSL ciphers for noc.wikimedia.org to support PFS

https://gerrit.wikimedia.org/r/147123
Comment 41 Jan Zerebecki 2014-07-17 18:26:40 UTC
It is B for ganglia because that old of an libssl and apache do not support newer TLS versions. ganglia / nickel.wikimedia.org is still on Ubuntu Lucid.
Comment 42 Gerrit Notification Bot 2014-07-18 11:26:04 UTC
Change 147185 had a related patch set uploaded by JanZerebecki:
racktables - update SSL cipher list

https://gerrit.wikimedia.org/r/147185
Comment 43 Gerrit Notification Bot 2014-07-18 11:29:37 UTC
Change 147196 had a related patch set uploaded by JanZerebecki:
smokeping - update SSL cipher list

https://gerrit.wikimedia.org/r/147196
Comment 44 Gerrit Notification Bot 2014-07-18 11:37:45 UTC
Change 147199 had a related patch set uploaded by JanZerebecki:
etherpad - update SSL cipher list

https://gerrit.wikimedia.org/r/147199
Comment 45 Gerrit Notification Bot 2014-07-18 11:49:17 UTC
Change 147207 had a related patch set uploaded by JanZerebecki:
icinga - update SSL cipher list

https://gerrit.wikimedia.org/r/147207
Comment 46 Gerrit Notification Bot 2014-07-18 12:13:21 UTC
Change 147208 had a related patch set uploaded by JanZerebecki:
generic_vhost (webserver) - update SSL ciphers

https://gerrit.wikimedia.org/r/147208
Comment 47 Gerrit Notification Bot 2014-07-18 12:17:53 UTC
Change 147214 had a related patch set uploaded by JanZerebecki:
metrics - update SSL cipher list

https://gerrit.wikimedia.org/r/147214
Comment 48 Gerrit Notification Bot 2014-07-18 16:11:33 UTC
Change 147196 abandoned by Dzahn:
smokeping - update SSL cipher list

https://gerrit.wikimedia.org/r/147196
Comment 49 Gerrit Notification Bot 2014-07-18 17:01:23 UTC
Change 147199 merged by Dzahn:
etherpad - update SSL cipher list

https://gerrit.wikimedia.org/r/147199
Comment 50 Gerrit Notification Bot 2014-07-18 20:56:33 UTC
Change 147185 merged by Dzahn:
racktables - update SSL cipher list

https://gerrit.wikimedia.org/r/147185
Comment 51 Gerrit Notification Bot 2014-07-18 21:38:52 UTC
Change 147214 merged by Dzahn:
metrics - update SSL cipher list

https://gerrit.wikimedia.org/r/147214
Comment 52 Gerrit Notification Bot 2014-07-19 04:31:07 UTC
Change 147715 had a related patch set uploaded by Chmarkine:
rt -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/147715
Comment 53 Gerrit Notification Bot 2014-07-19 14:37:17 UTC
Change 147739 had a related patch set uploaded by Chmarkine:
blog -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/147739
Comment 54 Gerrit Notification Bot 2014-07-19 15:11:16 UTC
Change 147740 had a related patch set uploaded by Chmarkine:
ishmael -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/147740
Comment 55 Gerrit Notification Bot 2014-07-22 04:03:31 UTC
Change 147739 abandoned by Chmarkine:
blog -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/147739
Comment 56 Gerrit Notification Bot 2014-07-23 09:13:34 UTC
Change 148618 had a related patch set uploaded by Chmarkine:
tendril -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/148618
Comment 57 Gerrit Notification Bot 2014-07-23 09:47:36 UTC
Change 148624 had a related patch set uploaded by Chmarkine:
planet -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/148624
Comment 58 Gerrit Notification Bot 2014-07-23 10:31:14 UTC
Change 148631 had a related patch set uploaded by Chmarkine:
svn -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/148631
Comment 59 Gerrit Notification Bot 2014-07-25 08:25:59 UTC
Change 149267 had a related patch set uploaded by Chmarkine:
icinga-admin -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/149267
Comment 60 Gerrit Notification Bot 2014-07-25 15:32:29 UTC
Change 149267 merged by Dzahn:
icinga-admin -- update cipher suite list to support PFS

https://gerrit.wikimedia.org/r/149267
Comment 61 chmarkine 2014-11-20 23:59:13 UTC
I just found that https://payments.wikimedia.org is still using the old cipher suite list: 

TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_RC4_128_SHA
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA

https://www.ssllabs.com/ssltest/analyze.html?d=payments.wikimedia.org

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links