【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Lodash 库爆出严重安全漏洞,波及 400 万 + 项目

  • 2019-07-10
  • 本文字数:1302 字

    阅读完需:约 4 分钟

Lodash库爆出严重安全漏洞,波及400万+项目

安全漏洞的问题一直是大家关心的问题,仿佛是巧合,在云视频会议服务提供商 Zoom 刚刚被爆出存在”零日漏洞“威胁 Mac 用户隐私和信息安全的同时,开发者熟知的 npm 库 Lodash 也被爆出存在高严重性安全漏洞——原型污染漏洞,该漏洞将威胁超过 400 万个项目的服务安全性。


Lodash是一个 JavaScript 库,包含简化字符串、数字、数组、函数和对象编程的工具,可以帮助程序员更有效地编写和维护 JavaScript 代码。昨天,Lodash 被爆出一个高严重性安全漏洞——”原型污染“漏洞。

漏洞爆发,波及超过 400 万项目


Lodash 是一款流行的 npm 库,GitHub 上使用它的项目就多于 400 万。昨天,开源安全平台 Snyk 的开发者 Liran Tal 发现了一个高严重性的原型污染漏洞,影响所有版本的 Lodash,包括最新版本 4.17.11。该漏洞对使用 Lodash 的用户群和服务安全性造成极大威胁。


该漏洞被指定为CVE-2019-10744,可能会影响大量的前端项目。因为 Lodash 的普及率非常高,每月的下载量超过 8000 万次。

原型污染漏洞的危害

原型污染漏洞使攻击者能够修改 Web 应用程序的 JavaScript 对象原型,这类似于一个可用于根据预定义结构存储多个值的变量。



这些结构和默认值被称为原型,可在未设置任何值时阻止应用程序对其进行散列。


但是,如果攻击者设法将属性注入现有的 JavaScript 对象原型中,就可以操纵这些属性来覆盖或污染应用程序。这样很可能会影响应用程序通过原型链处理 JavaScript 对象的过程,从而导致拒绝服务或远程代码执行出错。


根据 Tal 的说法,通过构造函数重载的方式,Lodash 库中的函数“defaultsDeep”很有可能会被欺骗添加或修改 Object.prototype 的属性,最终可能导致 Web 应用程序崩溃或改变其行为,具体取决于受影响的用例。


虽然”原型污染“漏洞影响非常严重,但是攻击者想要利用它并没有那么容易,他们需要深入了解每个 Web 应用程序的工作原理。

并非第一次爆出原型污染漏洞

早在去年 1 月 30 日,holyvier就向 Node.js第三方模块提交了一份报告。该报告指出 Lodash 受到原型污染攻击,攻击者可以添加或修改所有对象上现有的属性。Lodash 的创建者John-David Dalton随后立即对此漏洞做了修复更新。


之后,Maximilian Berkmann 也在 GitHub 上提交了关于”原型污染“的 issue,他指出 Lodash 4.17.5 之前的版本容易受到原型污染。易受攻击的函数是 defaultsDeep、merge 和 mergeWith,它们允许恶意用户通过“proto”修改对象的原型,从而导致所有对象上存在的现有属性被添加或修改。Lodash 的创建者John-David Dalton及时回复表示:”在 Lodash 更新到 4.17.5 或更高版本之后,这个问题可以得到解决“。


Lodash 原型污染漏洞报告:https://hackerone.com/reports/310443


GitHub 原型污染问题的讨论:https://github.com/lodash/lodash/issues/3882

漏洞修复计划

研究负责人向 Lodash 的维护人员 John Dalton 报告了这个漏洞,并提出了修复工具(拉取请求12),这些修复程序将包含在下一版本的 Lodash 库中,预计将很快发布。


如果你的项目也在使用 Lodash,建议你在官方补丁发布后立即更新 Lodash 库,或手动修补程序。


英文原文:https://thehackernews.com/2019/07/lodash-prototype-pollution.html


2019-07-10 19:5738744
用户头像
王莹 腾讯云产品运营

发布了 74 篇内容, 共 44.7 次阅读, 收获喜欢 229 次。

关注

评论

发布
暂无评论
发现更多内容

[架构实战营]第六模块作业

Vincent

「架构实战营」

架构训练营 week7 作业

红莲疾风

「架构实战营」

参加开源贡献后,大厂向我抛出了橄榄枝

openLooKeng

AI贺新年,开发者的虎年这样过才有意思

华为云开发者联盟

AI 华为云

18M 超轻量图像识别系统,商品、车辆、人脸识别一网打尽!

百度大脑

设计模式之单例模式

Catch

设计模式

TDSQL | 《checkpoint原理浅析》

腾讯云数据库

tdsql 国产数据库

Flink Keyed State 对 Key 的管理机制解析

邸星星

flink 状态管理 Flink KeyedState

在 Kubernetes 上安装和运行极狐GitLab实例

极狐GitLab

Kubernetes 极狐GitLab

实现科技自立自强,各企业如何发力?

脑极体

夜莺系统调研报告

苍狼

CVE-2021-4034 Linux Polkit 权限提升漏洞挖掘思路解读

腾讯安全云鼎实验室

云原生 漏洞分析

Luna:你想要的 React Native 调试工具

Shopee技术团队

前端 开发者工具 React Native

“中国智能科学技术最高奖”公布,华为云田奇获杰出贡献奖

Geek_2d6073

架构实战营 - 群讨论汇总 (2022)

华仔

#架构实战营

对比下 datax 的 OceanBase/MYSQL 不同数据同步方案的效率差异 || 聊聊参数 rewriteBatchedStatements

明哥的IT随笔

数据库

看看 InfoQ 的编辑和各大厂技术专家们,如何盘点技术圈的 2021

InfoQ写作社区官方

2021年度技术盘点与展望

开发postgreSQL connector支持update/delete操作的代码

openLooKeng

TDSQL | DTS for PostgreSQL 逻辑复制详解

腾讯云数据库

tdsql 国产数据库

创梦天地发行公益性数字艺术藏品,打造不一样的年味

科技热闻

设计模式之设计原则

Catch

设计模式

回顾明道云的2021(文末互动有奖)

明道云

分布式项目中,选型与依赖管理

架构 分布式 微服务 架构设计

详解 Flink CEP(以直播平台监控用户弹幕为例)

五分钟学大数据

flink 1月月更

手把手教你在优麒麟上搭建 RISC-V 交叉编译环境

优麒麟

Linux 开源 开发者 risc-v 优麒麟

TDSQL | TXSQL数据库内核与特性

腾讯云数据库

tdsql 国产数据库

设计模式之工厂模式

Catch

设计模式

Spark 核心详解

五分钟学大数据

spark 1月月更

Hive SQL底层执行过程 | 社区征文

五分钟学大数据

hive 新春征文

研发转岗产品经理,有什么需要注意的呢?

石云升

产品经理 产品思维 1月月更

架构训练营 week7 课程总结

红莲疾风

「架构实战营」

Lodash库爆出严重安全漏洞,波及400万+项目_语言 & 开发_王莹_InfoQ精选文章