Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(493)

Issue 757033004: Do not use HTTP/2 without adequate security. (Closed)

Created:
6 years ago by Bence
Modified:
6 years ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, eroman, Ryan Sleevi
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Do not use HTTP/2 without adequate security. Stop using HTTP/2 in case TLS 1.2 is not supported, connection has been downgraded to below TLS 1.2, or AES-GCM cipher required by HTTP/2 draft specification is not supported. BUG=436835 Committed: https://crrev.com/1e7575035b6a712eae7972304dc7b44af329626e Cr-Commit-Position: refs/heads/master@{#308226}

Patch Set 1 #

Patch Set 2 : Add include to fix linker error. #

Patch Set 3 : Add namespace qualifier to definition. #

Patch Set 4 : Check if suite is not disabled. #

Patch Set 5 : Rebase. #

Patch Set 6 : Test OpenSSL API. #

Patch Set 7 : Move logic to SSLClientSocket. #

Total comments: 1

Patch Set 8 : Revert SerializeNextProtos first argument type change. #

Total comments: 2

Patch Set 9 : Add namespace qualifier to definition. #

Total comments: 29

Patch Set 10 : Remove braces around one line if statements. #

Patch Set 11 : Add ssl_cipher_suite_names to NaCl build. #

Total comments: 1

Patch Set 12 : Address comments 13--15. #

Patch Set 13 : Rebase on https://crrev.com/794563003. #

Total comments: 6

Patch Set 14 : Lint. #

Total comments: 2

Patch Set 15 : Add TODO comment. #

Patch Set 16 : Remove ssl_cipher_suite_names.* from net_non_nacl_sources. #

Total comments: 4

Patch Set 17 : Address comments 21--22. #

Patch Set 18 : Rebase on https://crrev.com/798603002. #

Patch Set 19 : Bring back line accidentally deleted during merge. #

Patch Set 20 : Update function call in test. #

Total comments: 7

Patch Set 21 : Do not leave out TLS version check. #

Total comments: 4

Patch Set 22 : Address comment 21. #

Patch Set 23 : Fix unmatched parenthesis. #

Patch Set 24 : Address comment 25. #

Patch Set 25 : Remove incorrect comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+74 lines, -10 lines) Patch
M net/http/http_network_session.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M net/net.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +2 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 chunk +15 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2 chunks +23 lines, -1 line 0 comments Download
M net/socket/ssl_client_socket_nss.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2 chunks +17 lines, -1 line 0 comments Download
M net/socket/ssl_client_socket_openssl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2 chunks +15 lines, -3 lines 0 comments Download
M net/socket/ssl_client_socket_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 30 (8 generated)
Bence
Ryan: PTAL. In particular, please check that I have followed everything important in https://code.google.com/p/chromium/issues/detail?id=436835#c18. Is ...
6 years ago (2014-12-04 16:11:51 UTC) #2
Bence
Ryan: ping
6 years ago (2014-12-08 12:51:17 UTC) #3
Ryan Sleevi
Deferring to RCH here. I'm not fond of exposing static methods on the SSLClientSocket, because ...
6 years ago (2014-12-08 17:05:12 UTC) #6
Ryan Hamilton
On 2014/12/08 17:05:12, Ryan Sleevi wrote: > Deferring to RCH here. > > I'm not ...
6 years ago (2014-12-08 20:09:50 UTC) #7
Bence
rch: 1. > Ok, after talking with sleevi about this it sounds like there is ...
6 years ago (2014-12-09 15:22:30 UTC) #8
Bence
rch: PTAL. davidben: PTAL at ssl_client_socket_nss.cc. Thank you both. https://codereview.chromium.org/757033004/diff/160001/net/http/http_network_session.cc File net/http/http_network_session.cc (right): https://codereview.chromium.org/757033004/diff/160001/net/http/http_network_session.cc#newcode29 net/http/http_network_session.cc:29: ...
6 years ago (2014-12-10 18:05:21 UTC) #12
Ryan Hamilton
This looks promising to me. Very curious to get davidben's feedback. https://codereview.chromium.org/757033004/diff/200001/net/socket/nss_ssl_util.cc File net/socket/nss_ssl_util.cc (right): ...
6 years ago (2014-12-10 21:11:41 UTC) #13
davidben
Taking disabled_cipher_suites into account for NSS seems to be quite messy (see comments below). I ...
6 years ago (2014-12-10 21:29:57 UTC) #14
Ryan Sleevi
https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket.cc File net/socket/ssl_client_socket.cc (right): https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket.cc#newcode246 net/socket/ssl_client_socket.cc:246: if (IsSecureTLSCipherSuite(*it)) { On 2014/12/10 21:11:41, Ryan Hamilton wrote: ...
6 years ago (2014-12-10 22:53:06 UTC) #15
Bence
Ryans: PTAL. David: what's up with the linux_chromium_gn_dbg failure that started with Patch Set 11? ...
6 years ago (2014-12-11 16:50:50 UTC) #17
Ryan Hamilton
https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket.cc File net/socket/ssl_client_socket.cc (right): https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket.cc#newcode269 net/socket/ssl_client_socket.cc:269: if (!advertise_http2) { On 2014/12/10 22:53:06, Ryan Sleevi wrote: ...
6 years ago (2014-12-11 19:59:05 UTC) #18
Ryan Hamilton
Looking good. https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket_nss.cc File net/socket/ssl_client_socket_nss.cc (right): https://codereview.chromium.org/757033004/diff/200001/net/socket/ssl_client_socket_nss.cc#newcode986 net/socket/ssl_client_socket_nss.cc:986: *it) == ssl_config_.disabled_cipher_suites.end()) { On 2014/12/11 16:50:49, ...
6 years ago (2014-12-11 20:06:10 UTC) #19
Bence
Ryan: PTAL. David: PTAL at ssl_client_socket_nss.cc. BTW I figured out the NaCl duplicate definition build ...
6 years ago (2014-12-12 15:49:25 UTC) #20
Ryan Hamilton
LGTM, but please wait for David's approval before landing. Thanks for doing this CL! https://codereview.chromium.org/757033004/diff/350001/net/socket/ssl_client_socket.cc ...
6 years ago (2014-12-12 18:56:44 UTC) #21
davidben
https://codereview.chromium.org/757033004/diff/350001/net/socket/ssl_client_socket_nss.cc File net/socket/ssl_client_socket_nss.cc (right): https://codereview.chromium.org/757033004/diff/350001/net/socket/ssl_client_socket_nss.cc#newcode986 net/socket/ssl_client_socket_nss.cc:986: if (PK11_TokenExists(cipher) && We talked about this out-of-band, but ...
6 years ago (2014-12-12 19:45:36 UTC) #22
Bence
David: PTAL. https://codereview.chromium.org/757033004/diff/350001/net/socket/ssl_client_socket.cc File net/socket/ssl_client_socket.cc (right): https://codereview.chromium.org/757033004/diff/350001/net/socket/ssl_client_socket.cc#newcode258 net/socket/ssl_client_socket.cc:258: if (kProtoSPDY4MinimumVersion <= next_proto && On 2014/12/12 ...
6 years ago (2014-12-12 20:21:34 UTC) #23
Ryan Sleevi
LGTM, but two concerns below: https://codereview.chromium.org/757033004/diff/420001/net/http/http_network_session.cc File net/http/http_network_session.cc (right): https://codereview.chromium.org/757033004/diff/420001/net/http/http_network_session.cc#newcode29 net/http/http_network_session.cc:29: #include "net/socket/ssl_client_socket.h" unnecessary? https://codereview.chromium.org/757033004/diff/420001/net/socket/ssl_client_socket_nss.cc ...
6 years ago (2014-12-12 21:33:29 UTC) #24
davidben
(Patch set 21 seems to have compile problems.) https://codereview.chromium.org/757033004/diff/420001/net/socket/ssl_client_socket_nss.cc File net/socket/ssl_client_socket_nss.cc (right): https://codereview.chromium.org/757033004/diff/420001/net/socket/ssl_client_socket_nss.cc#newcode985 net/socket/ssl_client_socket_nss.cc:985: ssl_config_.next_protos, ...
6 years ago (2014-12-12 21:56:22 UTC) #25
Bence
Sorry for the frequent patches and broken compiles, by local compile was not done yet ...
6 years ago (2014-12-12 22:08:44 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/757033004/520001
6 years ago (2014-12-13 00:11:43 UTC) #28
commit-bot: I haz the power
Committed patchset #25 (id:520001)
6 years ago (2014-12-13 02:20:25 UTC) #29
commit-bot: I haz the power
6 years ago (2014-12-13 02:21:28 UTC) #30
Message was sent while issue was closed.
Patchset 25 (id:??) landed as
https://crrev.com/1e7575035b6a712eae7972304dc7b44af329626e
Cr-Commit-Position: refs/heads/master@{#308226}

Powered by Google App Engine
This is Rietveld 408576698