Node.js v20.3.1 发布


Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js 由 Node.js Foundation(已与 JS Foundation 合并为 OpenJS Foundation)持有和维护,亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于资料密集的即时应用程序。

Node.js v20.3.1 现已发布,本次更新内容如下:

Notable Changes

此版本中修复了以下 CVE:

  • CVE-2023-30581:mainModule.__proto__绕过实验性策略机制(高)
  • CVE-2023-30584:实验权限模型中的路径遍历旁路(高)
  • CVE-2023-30587:通过 Node.js Inspector 绕过实验权限模型(高)
  • CVE-2023-30582:不适当的权限模型允许未经授权的文件监视(中)
  • CVE-2023-30583:通过 fs.openAsBlob() 绕过实验权限模型(中)
  • CVE-2023-30585:在 Node.js 安装程序修复过程中通过 Malicious Registry Key 操作进行特权升级(中)
  • CVE-2023-30586:通过任意 OpenSSL 引擎绕过实验许可模型(中)
  • CVE-2023-30588:由于 x509 证书中的无效公钥信息导致进程中断(中)
  • CVE-2023-30589:通过 CR 分隔的 Empty headers 进行 HTTP Request Smuggling(中)
  • CVE-2023-30590:DiffieHellman 在设置私钥后不生成密钥(中)
  • OpenSSL 安全发布
    • OpenSSL 安全公告 3 月 28 日。
    • OpenSSL 安全公告 4 月 20 日。
    • OpenSSL 安全公告 5 月 30 日

Commits

  • [dac08dafc9] crypto:优雅地处理无效 SPKI 的证书 nodejs-private/node-private#393
  • [d274c3babc] - crypto,https,tls:启用 perms 后禁用引擎 nodejs-private/node-private#409
  • [5621c1de38] - deps:更新 openssl-3.0.9-quic1 的 archs 文件 #48402
  • [771caa9f1c] - deps:将 openssl sources 升级到 quictls/openssl-3.0.9-quic1 #48402
  • [0459bf9c99] - doc,test:阐明 DH generateKeys 的行为 nodejs-private/node-private#426
  • [9c17e335f1] - msi:不创建 AppData\Roaming\npm nodejs-private/node-private#408
  • [b51124c637] - permission:处理 fs 路径遍历 nodejs-private/node-private#403
  • [ebc5927adc] - permission:处理 fs.openAsBlob nodejs-private/node-private#405
  • [c39a43bff5] - permission:处理 fs.watchFile nodejs-private/node-private#404
  • [d0a8264ec9] - policy:处理 mainModule.__proto__ 绕过 nodejs-private/node-private#416
  • [3df13d5a79] - src,permission:启用 pm 时限制检查器 nodejs-private/node-private#410

更多详情可查看:https://nodejs.org/en/blog/release/v20.3.1


相關推薦

2023-12-05

Node.js v18.19.0 已发布,代号 'Hydrogen'。Node v18.19.0 是一个长期支持版本 (LTS),这意味着它将获得更长的支持和维护。LTS 版本通常更加稳定和可靠,适合用于生产环境。 主要变化 将 npm 升级到 v10 在 Node.js 20 中经过两个月的试

2023-11-24

Node.js v20.10.0 已正式发布,代号 'Iron'。根据发布时间表,由于上月 Node.js 21 已正式发布,因此 Node.js 20 就变成了长期支持版本 (LTS)。 新版本主要变化 引入新的--experimental-default-typeflag,用于改变 Node.js 的默认 module 通

2023-08-11

Node.js 为多个分支发布了更新,分别是:v16.20.2 (LTS)、v16.20.2 (LTS) 和 v20.5.1 (Current)。 根据发布公告,此次更新主要是修复安全漏洞。 CVE-2023-32002:可以通过 Module._load 绕过策略(高危) CVE-2023-32006:可以通过 module.cons

2023-07-08

常用于资料密集的即时应用程序。 Node.js v20.4.0 现已发布,本次更新内容如下: Mock Timers 新功能允许开发人员为时间相关的功能编写更可靠和可预测的测试。它包括MockTimers,能够模拟setTimeout,来自globals、node:timers和node:tim

2023-06-13

常用于资料密集的即时应用程序。 Node.js v20.3.0 现已发布,本次更新内容如下: Notable Changes [ bfcb3d1d9a] - deps:升级到 libuv 1.45.0,包括对 Linux 上文件系统操作的显着性能改进 #48078 [ 5094d1b292] - doc:将 R

2022-10-19

Node.js 19 在今天正式发布了,此次更新包括将 V8 JavaScript 引擎更新到 10.7,以及默认启用 HTTP(s)/1.1 KeepAlive。 Node.js 18 在本月晚些时候将进入长期支持(LTS),Node.js 19 将取代 Node.js 18 成为 "Current" 版本。 node --watch(实验性) 运

2022-11-16

Node.js v19.1.0 现已发布,此版本一些更新内容包括: Notable changes 支持 Node.js 测试运行器上的 function mocking #45326 node:test 模块在测试过程中通过顶层的 mock object 支持 mocking。 test('spies on an object method', (t) => { const number =

2023-01-09

常用于资料密集的即时应用程序。 Node.js v19.4.0 现已发布,本次更新内容如下: Notable Changes buffe: (SEMVER-MINOR) 为 utf8 验证添加 buffer.isUtf8 (Yagiz Nizipli) #45947 http: (SEMVER-MINOR) 改进了超时默认处理(Paol

2023-10-27

titbit v23.3.0 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: bodyparser.js 升级body解析方式。 其他一些细节更新。 详情查看:https://gitee.com/daoio/titbit/releases/v23.3.0

2023-10-31

titbit v23.3.5 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: bodyparser.js 解析multipart/form-data格式的数据去掉了split方式,改为跳跃式,提高了性能和安全性。并限制消息头数量,对超过最大消息头长度的文件不

2023-11-02

titbit v23.4.0 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: 升级body 解析方式 调整中间件执行过程,小范围优化 添加getService方法 优化升级helper模块助手函数 详情查看:https://gitee.com/daoio/titbit/releases/v23.4

2023-11-06

titbit v23.4.2 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: 小范围优化调整代码结构。 默认errorHandle忽略ERR_HTTP_REQUEST_TIMEOUT 详情查看:https://gitee.com/daoio/titbit/releases/v23.4.2

2022-10-18

Node.js 发布了两个更新,分别是 v16.18.0 (LTS) &  v18.11.0。 Node v16.18.0 (LTS) 主要变化 [1cc050eaa8] - (SEMVER-MINOR) assert: 添加getCalls和reset到 callTracker #44191 [e5c9975f11] - (SEMVER-MINOR) crypto: 允许 zero-length secret KeyObje

2023-04-12

Node.js v19.9.0 已发布。 值得关注的变化: diagnostic_channel 中的 Tracing Channel TracingChannel添加了一个新的高性能通道,来发布有关函数执行的时间和目的的跟踪数据。#44943 新的 URL.canParse API 一个新的 API 添加到 URL。URL.canParse检查