聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

Node.js 开发人员发布新版本,修复了四个漏洞。

Node.js 是用于构建可扩展网络应用程序的流行 JavaScript 运行时环境。在这四个漏洞中,其中三个是“中危”级别,一个是“低危”级别,均在12.x、14.x 和16.x 版本中修复。

中危缺陷

Node.js 发布安全公告称,第一个漏洞 (CVE-2021-44531) 是因对 URI Subject Alternative Names (SAN) 的不当处理造成的。接受任意 SAN 类型,除非PKI 被制定使用特殊的 SAN 类型,则可导致限制名称的中间体遭绕过。Node.js 接受 URI SAN 类型,而PKI 通常无法使用这些类型。另外,当协议允许 URI SANs 时,Node.js 不会正确匹配 URI。

该漏洞由谷歌研究团队报告,已通过在检查证书的主机名过程中禁用 URI SAN 类型的方式在Node.js 的新版本中修复。博客指出,该行为可通过命令行选项 –security-revert 还原。

第二个漏洞 (CVE-2021-44532) 是通过字符串注入bug的证书认证绕过漏洞。当 Node.js 将 SANs 还原为字符串格式时,会在验证连接时使用该字符串检查同等证书中的主机名问题。当证书链中使用了名称限制时会触发触发字符串格式中的注入漏洞,导致这些名称限制被绕过。

该漏洞同样由谷歌报告,目前已修复。新版本逃逸了包含有问题字符的SANs,从而阻止注入漏洞。该行为可通过命令行选项 –security-revert 还原。

第三个漏洞同样由谷歌报告,和不正确地处理证书主题和发布人字段有关 (CVE-2021-44533)。

文章解释称,Node.js 未正确处理多值 Relative Distinguished Names,“攻击者可构造包含单值 Relative Distinguished Name 的被解释为多值Relative Distinguished Name 的证书主题,注入 Common Name,从而绕过证书主题验证“。然而,受影响的 Node.js 并不接受多值 Relative Distinguished Names,因此不受此类攻击影响。然而,开发人员提醒称,使用 Node.js 的证书主题有歧义表示的第三方代码可能受影响。

低危漏洞

Node.js 修复的第四个漏洞是低危漏洞 (CVE-2022-21824),可导致攻击者通过 console.table 属性污染原型。鉴于Console.table() 函数的格式化逻辑,以下做法并不安全:允许受用户控制的输入被传递给属性参数,同时将具有至少一个属性的对象当作第一个参数 (_proto_) 进行传递。

该原型污染漏洞产生的影响有限,因为它仅允许将空白字符串分配给对象原型的数字键。

Node.js 最新版本为得到这些属性分配的对象使用了 null 属性,修复该漏洞。

所有这些漏洞均已在 Node.js 版本12.x、14.x、16.x 和17.x 中修复。


推荐阅读

在线阅读版:《2021中国软件供应链安全分析报告》全文

Node.js 沙箱易受原型污染攻击

Node.js 易受两个HTTP请求走私漏洞影响

Node.js TLSWrap 实现中的释放后使用漏洞分析

GitHub 在热门 Node.js changelog 开源库Standard Version中发现 RCE 漏洞

基于JS的勒索软件Ransom32利用Node.js感染用户

原文链接

https://portswigger.net/daily-swig/multiple-node-js-vulnerabilities-fixed-in-flurry-of-new-releases

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

 觉得不错,就点个 “在看” 或 "赞” 吧~

Node.js 修复4个漏洞相关推荐

  1. node/js 漏洞_6个可用于检查Node.js中漏洞的工具

    node/js 漏洞 Vulnerabilities can exist in all products. The larger your software grows, the greater th ...

  2. 【特别推荐】Node.js 中文学习资料和教程导航

    这篇文章来自 Github 上的一位开发者收集整理的 Node.js 中文学习资料和教程导航.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念,它的目标是帮助程 ...

  3. 知名Node.js组件存在代码注入漏洞

    喜欢就关注我们吧! 日前,一个被大量下载的 Node.js 组件被发现其含有一个高危的代码注入漏洞. 该漏洞被追踪为 CVE-2021-21315,影响了「systeminformation」npm ...

  4. Node.js TLSWrap 实现中的释放后使用漏洞分析

     聚焦源代码安全,网罗国内外最新资讯! Node v14.11.0 版本的 TLS 实现中存在一个释放后使用漏洞. 当写入启用 TLS 的套接字时,node::StreamBase::Write 调用 ...

  5. GitHub 在热门 Node.js changelog 开源库Standard Version中发现 RCE 漏洞

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 上周,GitHub 安全实验室的研究员 Erik Krogh Kristensen 在 StandardVersion 中发现一个漏洞 ...

  6. Node.js 8有哪些重要功能和修复?

    2019独角兽企业重金招聘Python工程师标准>>> 5月30日12点,Node.js 8正式发布了,这个版本具有一系列新功能和性能改进,并且这些功能和改进将获得长期支持(LTS) ...

  7. node.js mysql防注入_避免Node.js中的命令行注入安全漏洞

    在这篇文章中,我们将学习正确使用Node.js调用系统命令的方法,以避免常见的命令行注入漏洞. 我们经常使用的调用命令的方法是最简单的child_process.exec.它有很一个简单的使用模式;通 ...

  8. doodoo.js发布1.1.0 -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js, Express.js中间件。包含多项功能改进,及Bug修复。...

    2019独角兽企业重金招聘Python工程师标准>>> doodoo.js发布1.1.0 -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js, Express.j ...

  9. ctfshow—Node.js漏洞总结

    1 Js大小写绕过 ctfshow web334 下载源码 var findUser = function(name, password){return users.find(function(ite ...

最新文章

  1. python[外星人入侵] 项目
  2. 输入字符串,统计英文字符、大写小写字母,数字字符,空格和其他字符
  3. 基于复杂方案OWSAP CsrfGuard的CSRF安全解决方案(适配nginx + DWR)
  4. websocketpp 只发送一次
  5. 产品经理该如何全局思考和分析行业产业链?
  6. Delphi中高级DLL的编写和调用
  7. sql查询数据库所有表、字、注释
  8. java swing 雪花_求用JAVA制作的飘雪花的效果
  9. 从零开始设计共享电动车充电桩(一)——构思篇
  10. 拉格朗日插值一个公式概括
  11. 关于csgo的观看录像fps低_CSGO如何设置视频选项高FPS
  12. NYOJ 234 吃土豆(基础dp)
  13. 基于无线通信的多点温湿度采集系统设计
  14. BOF和EOF的区别
  15. purifier 常用配置 保留 id 和 iframe
  16. ASCP300-63B——三相电气防火限流式保护器
  17. 安桌16进制变色列表和计算方法
  18. JavaWeb、前端三剑客
  19. 切片 (python)
  20. [4G5G专题-14]:应用层-5G的三大业务应用场景(多、快、好、省)

热门文章

  1. MySQL Semisync
  2. 手动实现 NSTabViewController 的 Rect Transition 及 Propagate Title-b
  3. LVS负载均衡集群服务搭建详解(一)
  4. 在阿里云主机的Debian操作系统上安装Docker
  5. Hyper-V 3.0网络虚拟化PART 4:私有交换机
  6. WebStorm安装Vim以及快捷键设置
  7. 使用nlite制作集成驱动windows安装光盘及实践心得
  8. Makefile-filter和filter-out
  9. ajax异步session值不唯一 总是改变 解决办法
  10. wiki迁移方法操作步骤