【nodejs原型链污染】

一、什么是原型链污染



https://security.snyk.io/vuln/SNYK-JS-LODASH-450202


二、原型链污染原理

三、哪些情况下会原型链污染


也就是上面o2里的 __proto__ 代码的是o2 而不是object原型

四、原型链污染导致的RCE

五、练习

题目给了一串node.js的代码

api 路由下会把 req.body 合并 进一给空字典,这里就有原型链污染的地方

我们的目的是为了执行这里的eval,让Super 拥有 userid : superadmin , 也就是通过污染原型链让所有的object对象都拥有userid

将payload注入到api路由下,api路由会执行merge合并,让空字典的原型链__proto__ 拥有userid:useradmin 属性

访问后发现并没有成功

因为没有用json解析,这个和之前将的没有成功污染原型链的例子一样

改成json 再次访问就变空白了

接下来只需要对code进行传参,但code有黑名单过滤

这里用十六进制来绕过 quire('child_process') [execSync](ls /)

相关推荐
San301 天前
AI 时代的“USB-C”接口:MCP 核心原理与实战
langchain·node.js·mcp
helloweilei2 天前
javascript 结构化克隆
javascript·node.js
小蜜蜂dry3 天前
nestjs学习 - 控制器、提供者、模块
前端·node.js·nestjs
San303 天前
手写 Mini Cursor:基于 Node.js 与 LangChain 的开发实战
langchain·node.js·agent
前端付豪3 天前
Nest 项目小实践之图书增删改查
前端·node.js·nestjs
sunny_4 天前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
Qinana4 天前
150行代码搞定私有知识库!Node.js + LangChain 打造最小化 RAG 系统全流程
人工智能·程序员·node.js
一次旅行4 天前
npm-error code 128问题解决方法
node.js
前端付豪5 天前
Nest 项目小实践之图书展示和搜索
前端·node.js·nestjs
无责任此方_修行中5 天前
如何利用 pnpm 的安全控制功能防御 npm 供应链攻击
javascript·npm·node.js