Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: nodejs/node
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v20.11.0
Choose a base ref
...
head repository: nodejs/node
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v20.11.1
Choose a head ref
  • 16 commits
  • 575 files changed
  • 9 contributors

Commits on Jan 9, 2024

  1. Working on v20.11.1

    PR-URL: #51124
    UlisesGascon committed Jan 9, 2024
    Configuration menu
    Copy the full SHA
    0ebaecc View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2024

  1. src: fix HasOnly(capability) in node::credentials

    SYS_capget with _LINUX_CAPABILITY_VERSION_3 returns the process's
    permitted capabilities as two 32-bit values. To determine if the only
    permitted capability is indeed CAP_NET_BIND_SERVICE, it is necessary to
    check both of those values.
    
    Not doing so creates a vulnerability that potentially allows
    unprivileged users to inject code into a privileged Node.js process
    through environment variables such as NODE_OPTIONS.
    
    PR-URL: nodejs-private/node-private#505
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-21892
    tniessen authored and marco-ippolito committed Feb 12, 2024
    Configuration menu
    Copy the full SHA
    40ff37d View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2024

  1. crypto: disable PKCS#1 padding for privateDecrypt

    Refs: https://hackerone.com/bugs?subject=nodejs&report_id=2269177
    
    Disable RSA_PKCS1_PADDING for crypto.privateDecrypt() in order
    to protect against the Marvin attack.
    
    Includes a security revert flag that can be used to restore
    support.
    
    Signed-off-by: Michael Dawson <[email protected]>
    PR-URL: nodejs-private/node-private#525
    Refs: https://hackerone.com/bugs?subject=nodejs&report_id=2269177
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2023-46809
    mhdawson authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    7079c06 View commit details
    Browse the repository at this point in the history
  2. http: add maximum chunk extension size

    PR-URL: nodejs-private/node-private#519
    Fixes: https://hackerone.com/reports/2233486
    Reviewed-By: Matteo Collina <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-22019
    ShogunPanda authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    77ac7c3 View commit details
    Browse the repository at this point in the history
  3. zlib: pause stream if outgoing buffer is full

    Signed-off-by: Matteo Collina <[email protected]>
    PR-URL: nodejs-private/node-private#541
    Reviewed-By: Robert Nagy <[email protected]>
    Ref: https://hackerone.com/reports/2284065
    CVE-ID: CVE-2024-22025
    mcollina authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    c213910 View commit details
    Browse the repository at this point in the history
  4. lib: update undici to v5.28.3

    Signed-off-by: Matteo Collina <[email protected]>
    PR-URL: nodejs-private/node-private#539
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-24758
    mcollina authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    89bd5fc View commit details
    Browse the repository at this point in the history
  5. deps: upgrade openssl sources to quictls/openssl-3.0.13+quic1

    PR-URL: #51614
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    nodejs-github-bot authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    7a30fec View commit details
    Browse the repository at this point in the history
  6. deps: update archs files for openssl-3.0.13+quic1

    PR-URL: #51614
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    nodejs-github-bot authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    f7b44bf View commit details
    Browse the repository at this point in the history
  7. deps: disable io_uring support in libuv by default

    setuid() does not affect libuv's internal io_uring operations if
    initialized before the call to setuid(). This potentially allows the
    process to perform privileged operations despite presumably having
    dropped such privileges through a call to setuid(). Similar concerns
    apply to other functions that modify the process's user identity.
    
    This commit changes libuv's io_uring behavior from opt-out (through
    UV_USE_IO_URING=0) to opt-in (through UV_USE_IO_URING=1) until we figure
    out a better long-term solution.
    
    PR-URL: nodejs-private/node-private#529
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-22017
    tniessen authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    686da19 View commit details
    Browse the repository at this point in the history
  8. src,deps: disable setuid() etc if io_uring enabled

    Within Node.js, attempt to determine if libuv is using io_uring. If it
    is, disable process.setuid() and other user identity setters.
    
    We cannot fully prevent users from changing the process's user identity,
    but this should still prevent some accidental, dangerous scenarios.
    
    PR-URL: nodejs-private/node-private#529
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-22017
    tniessen authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    3f6addd View commit details
    Browse the repository at this point in the history
  9. deps: fix GHSA-f74f-cvh7-c6q6/CVE-2024-24806

    Refs: GHSA-f74f-cvh7-c6q6
    
    PR-URL: #51737
    Reviewed-By: Ben Noordhuis <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-24806
    santigimeno authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    186a6e1 View commit details
    Browse the repository at this point in the history
  10. fs: protect against modified Buffer internals in possiblyTransformPath

    Use encodeUtf8String from the encoding_binding internal binding to
    convert the result of path.resolve() to a Uint8Array instead of using
    Buffer.from(), whose result can be manipulated by the user by
    monkey-patching internals such as Buffer.prototype.utf8Write.
    
    HackerOne report: https://hackerone.com/reports/2218653
    
    PR-URL: nodejs-private/node-private#497
    Reviewed-By: Rafael Gonzaga <[email protected]>
    CVE-ID: CVE-2024-21896
    tniessen authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    480fc16 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    ed7d149 View commit details
    Browse the repository at this point in the history
  12. permission: fix wildcard when children > 1

    PR-URL: #51209
    Fixes: #50659
    Reviewed-By: Stephen Belanger <[email protected]>
    Reviewed-By: Paolo Insogna <[email protected]>
    Reviewed-By: Rich Trott <[email protected]>
    RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    d01dd42 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    d6da413 View commit details
    Browse the repository at this point in the history
  14. 2024-02-14, Version 20.11.1 'Iron' (LTS)

    This is a security release.
    
    Notable changes:
    
    crypto:
      * disable PKCS#1 padding for privateDecrypt (Michael Dawson) nodejs-private/node-private#525
    deps:
      * upgrade libuv to 1.48.0 (Santiago Gimeno) #51699
      * update archs files for openssl-3.0.13+quic1 (Node.js GitHub Bot) #51614
      * upgrade openssl sources to quictls/openssl-3.0.13+quic1 (Node.js GitHub Bot) #51614
      * disable io\_uring support in libuv by default (Tobias Nießen) nodejs-private/node-private#529
      * fix GHSA-f74f-cvh7-c6q6/CVE-2024-24806 (Santiago Gimeno) #51737
    fs:
      * protect against modified Buffer internals in possiblyTransformPath (Tobias Nießen) nodejs-private/node-private#49
    http:
      * add maximum chunk extension size (Paolo Insogna) nodejs-private/node-private#519
    lib:
      * update undici to v5.28.3 (Matteo Collina) nodejs-private/node-private#539
      * use cache fs internals against path traversal (RafaelGSS) nodejs-private/node-private#516
    src:
      * fix HasOnly(capability) in node::credentials (Tobias Nießen) nodejs-private/node-private#505
    src,deps:
      * disable setuid() etc if io\_uring enabled (Tobias Nießen) nodejs-private/node-private#529
    test,doc:
      * clarify wildcard usage (RafaelGSS) nodejs-private/node-private#517
    zlib:
      * pause stream if outgoing buffer is full (Matteo Collina) nodejs-private/node-private#541
    
    PR-URL: nodejs-private/node-private#544
    marco-ippolito authored and RafaelGSS committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    9b1bf44 View commit details
    Browse the repository at this point in the history
Loading