Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

tls: disable RC4, add --cipher-list command line switch #14413

Conversation

jasnell
Copy link
Member

@jasnell jasnell commented Apr 2, 2015

Disable RC4 in the default cipher list

Add the --cipher-list command line switch and NODE_CIPHER_LIST
environment variable to completely override the default cipher list.

Add the --enable-legacy-cipher-list and NODE_LEGACY_CIPHER_LIST
environment variable to selectively enable the default cipher list from
previous node.js releases.

(Targets v0.10.38-release)

Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.
@jasnell jasnell self-assigned this Apr 2, 2015
@jasnell jasnell added the P-1 label Apr 2, 2015
@mhdawson
Copy link
Member

mhdawson commented Apr 6, 2015

I had reviewed the 0.10.X version of the patch with James and we have run it through our internal builds. FV passed without any regressions, we are starting SVT now.

lgtm

@jasnell
Copy link
Member Author

jasnell commented Apr 6, 2015

Ok. So far the only nit appears to be making the PrintHelp output less
verbose. I can make that change then will work with Julien on getting this
landed.

On Mon, Apr 6, 2015 at 8:55 AM, Michael Dawson notifications@github.com
wrote:

I had reviewed the 0.10.X version of the patch with James and we have run
it through our internal builds. FV passed without any regressions, we are
starting SVT now.

lgtm


Reply to this email directly or view it on GitHub
#14413 (comment).

Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.
@@ -2652,6 +2657,21 @@ static void ParseArgs(int argc, char **argv) {
} else if (strcmp(arg, "--throw-deprecation") == 0) {
argv[i] = const_cast<char*>("");
throw_deprecation = true;
} else if (strncmp(arg, "--cipher-list=", 14) == 0) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm wondering if we need to support a --cipher-list command line option in v0.10.x. Adding support for --enable-legacy-cipher-list already breaks the contract of not adding additional API in patch releases, and it seems sufficient to handle the use case of users not wanting to use the new default ciphers list.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding --cipher-list here is intended to make it so we don't have to make this kind of change in v0.10.x and v0.12.x again. If another one of the ciphers comes into question, we can tell users to simply pass in the new cipher list rather than going in and changing it.

@misterdjules
Copy link

@jasnell Added one additional comment specific to v0.10.x and this PR, and my comments in #14383 also apply here.

Thank you for doing all this work @jasnell 👍

jasnell added a commit that referenced this pull request Apr 8, 2015
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #14413
jasnell added a commit that referenced this pull request Apr 8, 2015
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #14413
jasnell added a commit that referenced this pull request Apr 8, 2015
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #14413
jasnell added a commit that referenced this pull request Apr 8, 2015
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #14413
@jasnell
Copy link
Member Author

jasnell commented Apr 8, 2015

Landed in #67d9a56 and #02a549e

@jasnell jasnell closed this Apr 8, 2015
misterdjules pushed a commit to misterdjules/node that referenced this pull request Apr 9, 2015
This change fixes the problem where the cipher list that was setup for
a given test was never passed to the client, triggering some false
positives with the recent changes made to the ciphers list used by
default (see nodejs#14413).
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jun 30, 2015
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jun 30, 2015
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jun 30, 2015
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jun 30, 2015
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jul 16, 2015
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
misterdjules pushed a commit to misterdjules/node that referenced this pull request Jul 16, 2015
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
jBarz pushed a commit to ibmruntimes/node that referenced this pull request Nov 4, 2016
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
jBarz pushed a commit to ibmruntimes/node that referenced this pull request Nov 4, 2016
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
jBarz pushed a commit to ibmruntimes/node that referenced this pull request Nov 7, 2016
Disable RC4 in the default cipher list

Add the `--cipher-list` command line switch and `NODE_CIPHER_LIST`
environment variable to completely override the default cipher list.

Add the `--enable-legacy-cipher-list` and `NODE_LEGACY_CIPHER_LIST`
environment variable to selectively enable the default cipher list from
previous node.js releases.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
jBarz pushed a commit to ibmruntimes/node that referenced this pull request Nov 7, 2016
Per feedback on the commit, make the PrintHelp for
--enable-legacy-cipher-list less verbose.

Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#14413
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants