Skip to content

meta: refine the security vuln posture for experimental flagged features - #65438

Open
jasnell wants to merge 2 commits into
nodejs:mainfrom
jasnell:jasnell/refine-security-vuln-posture-for-experimental
Open

meta: refine the security vuln posture for experimental flagged features#65438
jasnell wants to merge 2 commits into
nodejs:mainfrom
jasnell:jasnell/refine-security-vuln-posture-for-experimental

Conversation

@jasnell

@jasnell jasnell commented Aug 20, 2026

Copy link
Copy Markdown
Member

Currently, any runtime gated experimental feature security vulnerability is considered a "valid" vulnerability, even if the work is still very much work in progress. This adds friction because it ends up requiring that things be compile time gated which makes it more difficult if there is not a corresponding CI job to run tests.

This relaxes the policy a bit. For anything that is 1.0 and 1.1, a vuln report is only valid if it directly compromises a stable feature, allows a workaround that compromises a stable feature, etc. An example would be an obvious DOS vector that can be exploited even if the feature is not enabled, for instance.

This gives us leeway to reject vuln reports on things that are enabled only by --experimental-* runtime flag that are still works in progress.

@jasnell
jasnell requested review from a team, RafaelGSS and mcollina August 20, 2026 16:29
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/tsc

@nodejs-github-bot nodejs-github-bot added the doc Issues and PRs related to the documentations. label Aug 20, 2026
Comment thread SECURITY.md Outdated
Currently, any runtime gated experimental feature security vulnerability
is considered a "valid" vulnerability, even if the work is still very
much work in progress. This adds friction because it ends up requiring
that things be compile time gated which makes it more difficult if there
is not a corresponding CI job to run tests.

This relaxes the policy a bit. For anything that is 1.0 and 1.1, a vuln
report is only valid if it directly compromises a stable feature, allows
a workaround that compromises a stable feature, etc. An example would be
an obvious DOS vector that can be exploited even if the feature is not
enabled, for instance.

This gives us leeway to reject vuln reports on things that are enabled
only by `--experimental-*` runtime flag that are still works in progress.

Signed-off-by: James M Snell <jasnell@gmail.com>
Given it's complexity and active development, give ourselves coverage
by specifically excluding QUIC/H3 from vuln reports. Any vuln reports
received for QUIC, unless it's something that can compromise security
of something else in Node.js when the `--experimental-quic` runtime
flag is not enabled, should be handled as regular issues and not as
security vulns

Signed-off-by: James M Snell <jasnell@gmail.com>
@jasnell
jasnell force-pushed the jasnell/refine-security-vuln-posture-for-experimental branch from e29539d to 15f3ea3 Compare August 21, 2026 15:58

@mcollina mcollina left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm

Comment thread SECURITY.md

Experimental features behind runtime flags can fall into one of three categories:

* 1.0 - Early development. Experimental features at this stage are unfinished

@legendecas legendecas Aug 21, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc Issues and PRs related to the documentations.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants