Node.js项目
摘要
OpenSSL项目发布了一份包含12个CVE(通用漏洞披露)的安全公告。经过评估,我们认定有三个CVE会影响Node.js(严重程度为低到中)。考虑到攻击面有限,OpenSSL更新将包含在即将发布的常规Node.js版本中,而不是专门的安全版本。
分析
这三个漏洞均与 Node.js 处理 PFX (PKCS#12) 证书文件的方式有关,这些文件在通过 pfx 选项配置 TLS 连接时使用。攻击者需要提供特制的 PFX 文件才能触发这些问题。由于 PFX 文件通常来自受信的本地源(例如您自己的私钥和证书),因此实际攻击面有限。
CVE-2025-11187:PBMAC1 MAC 验证中的堆栈缓冲区溢出 - 中等
| 分支 | OpenSSL版本 | 受影响 |
|---|---|---|
| v20.x | 3.0.15 | 否 |
| v22.x | 3.5.4 | 是 |
| v24.x | 3.5.4 | 是 |
| v25.x | 3.5.4 | 是 |
| 主分支 | 3.5.4 | 是 |
OpenSSL 3.0(v20.x 使用)不支持 PBMAC1,因此不受影响。
CVE-2025-69421:PKCS12_item_decrypt_d2i_ex() 中的空指针解引用 - 低危
| 分支 | OpenSSL版本 | 受影响 |
|---|---|---|
| v20.x | 3.0.15 | 是 |
| v22.x | 3.5.4 | 是 |
| v24.x | 3.5.4 | 是 |
| v25.x | 3.5.4 | 是 |
| 主分支 | 3.5.4 | 是 |
此函数由 PKCS12_parse() 在内部调用。所有分支均受影响。
CVE-2026-22795:PKCS#12 解析过程中的类型混淆 - 低危
| 分支 | OpenSSL版本 | 受影响 |
|---|---|---|
| v20.x | 3.0.15 | 是 |
| v22.x | 3.5.4 | 是 |
| v24.x | 3.5.4 | 是 |
| v25.x | 3.5.4 | 是 |
| 主分支 | 3.5.4 | 是 |
OpenSSL 3.0和3.5都存在漏洞。所有分支均受影响。
不影响Node.js的CVE
以下9个CVE在任何分支上都不影响Node.js:
- CVE-2025-15467(高危,CMS AuthEnvelopedData): Node.js不使用CMS API。
- CVE-2025-15468(低危,SSL_CIPHER_find + QUIC):
Node.js从不调用
SSL_CIPHER_find()。 - CVE-2025-15469(低危,openssl dgst截断): 仅限命令行工具。
- CVE-2025-66199(低,TLS 1.3 压缩证书): Node.js 在所有分支上的构建均包含
OPENSSL_NO_COMP,因此证书压缩功能被禁用。 - CVE-2025-68160(低,BIO_f_linebuffer): Node.js 不使用该 BIO 过滤器。
- CVE-2025-69418(低,低级别 OCB): Node.js 使用 EVP API,公告确认该 API 可避免漏洞路径。
- CVE-2025-69419(低,PKCS12_get_friendlyname): Node.js 不会调用此函数;公告指出使用了单独的安全路径。
PKCS12_parse()使用了单独的安全路径。 - CVE-2025-69420(低,TS_RESP_verify_response): Node.js 不使用时间戳协议 API。
- CVE-2026-22796(低,PKCS7_digest_from_attributes): Node.js 不会调用 PKCS#7 签名验证 API。
当前的 Node.js 安全策略可以在以下位置找到https://github.com/nodejs/node/security/policy#security包括如何报告Node.js漏洞的信息。
订阅低流量公告专用Node.js 安全(nodejs-sec)邮件列表在https://groups.google.com/forum/#!forum/nodejs-sec为了及时了解Node.js及其维护的项目中的安全漏洞和安全相关发布。nodejs GitHub 组织






















