缺陷使远程攻击者由于不安全的序列化注入任意代码

Deserialize-JavaScript NPM软件包已针对代码注入漏洞进行修补

攻击者可以利用序列化 - JavaScript NPM软件包中发现的最近公开的安全漏洞,以执行远程代码执行(RCE)。

开发和维护雅虎,,,,序列化javascript是一个受欢迎的开源项目,用于将JavaScript序列化为JSON的Superset,包括表达式,日期和功能。

乔丹·米尔恩(Jordan Milne)和瑞安·西伯特(Ryan Siebert公开上周通过GitHub咨询数据库。

跟踪为CVE-2020-7660,Serialize-JavaScript中的漏洞允许远程攻击者通过删除功能功能内部index.js

3.1.0以下的Serialize-JavaScript版本受到影响。

概念证明

Serialize-JavaScript是一个受欢迎的图书馆,下载超过1600万和840个依赖项目。

根据咨询的说法,不安全的序列化问题将允许诸如{“ foo”: /1“ /,” bar“:” a \“ @__ r- -0 __@”}序列化{“ foo”:/1“/,” bar“:” a \/1“/},因此用户输入可以规避条键。


有关的流行节点中的原型污染错误。JS库留下的Web应用程序开放到远程外壳攻击beplay体育能用吗


因此,如果攻击者可以控制“ foo”和“ bar”的值并猜测UID,则可以实现RCE。

该建议补充说,UID的钥匙空间约为40亿,使剥削成为“现实的网络攻击”。

例如,下面的概念证明能够调用Console.log()“ serialize()`d版本是`eval()`d d''。


eval('('(' + serialize)({“ foo”: /1“” + console.log(1) /i,“ bar”:''@__ r- -0 -0 __@'}) +')')');


漏洞已修补Serialize-JavaScript版本3.1.0并通过更改代码解决了贡献者的解决,以确保占位符之前没有后斜切。

此外,还包括更高的熵UID。

广泛的影响

CVE-2020-7660在“重要”范围内的CVSS严重程度得分为8.1,并在“关键”范围内登录。

但是,在红帽咨询在漏洞上,组织已将问题降低为“中等”,因为利用Serialize-JavaScript的应用程序必须能够控制通过它传递的JSON数据以触发该错误。

Red Hat音符支持的容器本机虚拟化2受影响的版本不受影响,但是包括2.0在内的旧版本很脆弱。

为OpenShift Service网格发布了修复程序1.0/1.1(Servicemesh-Grafana),并且正在为红色帽子OpenShift容器平台4(OpenShift4/Ose-Prometheus)提供一个补丁。

由于包装的普及,其他存储库也受到影响,包括Ruby在Rails上beplay体育能用吗webpacker

通过使用Serialize-JavaScript的脆弱版本,解决了解决稳定分支的修复程序,于8月16日(8月16日)发布了。

每日swbeplay2018官网ig已经与米尔恩(Milne)和西伯特(Siebert)联系了其他疑问,并在我们听到后会更新。


推荐的拒绝毛线攻击:如何防止针对无服务器设置的代价高昂的利用