【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 /)

相关推荐
HaipengYu12 小时前
深度解密 OpenCode 2 插件加载机制:Dual-Version (V1/V2) 适配实战与官方文档的“隐形陷阱”
node.js
前端之虎陈随易17 小时前
bm2,Node.js 与 Bun 项目部署新选择
node.js
梦帮科技2 天前
【3.0修订版】 RNS 代币架构:ERC20 五件套扩展与六钱包分配
数据结构·后端·算法·架构·node.js·区块链·php
niyongsheng3 天前
后端零改动,给若依换一套现代化前端
vue.js·开源·node.js
liangshanbo12153 天前
面试题:Webpack 的 publicPath 有什么作用?
前端·webpack·node.js
hasty3 天前
不上传新包,也能改变用户拿到的版本:npm dist-tag 的 OIDC 权限治理
前端·npm·node.js
福兮说4 天前
前后端算的 MD5、SHA-256 对不上?编码、换行、BOM、HMAC、JSON 顺序,八个原因逐个实测
前端·javascript·node.js·json·哈希算法
lingchen19064 天前
Node.js的下载安装配置
node.js
LRL_5 天前
【实战指南】Node.js 跨平台依赖下载:如何在 Windows/Linux 环境下互跨下载目标系统的 npm/pnpm 包
linux·windows·node.js
福兮说5 天前
URL 编码的七个坑:c++ 传到后端变空格、%25 套娃、截断 emoji 直接报错
开发语言·前端·javascript·node.js·url