简单复现原型链污染

原型链污染是一种安全漏洞,通过修改JavaScript对象的原型链,可以修改对象的行为或者访问未授权的属性和方法,利用它来执行恶意代码或者获取未授权的访问权限:

javascript 复制代码
// 创建一个被污染的对象
var aa = {}

// 创建一个用于污染原型链的恶意对象
var bb = {
  pollute: function() {
    // 修改Object原型上的属性,影响到所有对象
    Object.prototype.polluted = true
  }
}

// 污染原型链
aa.__proto__ = bb;

// 调用恶意对象的方法,污染原型链
aa.pollute()

console.log({}.polluted)

首先创建一个空对象 aa,然后创建了另一个对象 bb,并将其设置为 aa 对象的原型。然后,我们调用 aa.pollute() 方法,该方法修改了 Object 原型上的属性 polluted,从而影响到所有JavaScript对象

相关推荐
苏能润滑油油液文哥12 小时前
储能液冷安全边界解析:从热失控链条看冷却液的介入区间与选型指标
安全
Lcr3s13 小时前
我的DVWA靶场实践_Low难度
安全
亚远景aspice13 小时前
亚远景-低空经济与具身智能:具身智能飞行器量产落地,过程合规与安全体系怎么搭
人工智能·安全·过程改进·低空经济·研发管理·亚远景科技·过程能力评估
EasyGBS14 小时前
水域乱象难管控?国标GB28181视频平台EasyGBS视频+AI双引擎赋能河湖监管
深度学习·安全·gb28181
万年咸鱼14 小时前
HTTPS 是如何保证传输安全的?
网络协议·安全·https
JackieDYH14 小时前
深入理解iframe的allow属性与安全实践-iframe权限点
安全
OxYGC16 小时前
Spring 面经系列 · 第 1 篇:Bean 生命周期、单例语义、依赖注入与线程安全
java·安全·spring
himobrinehacken17 小时前
位运算揭秘:左右移与符号位陷阱
c语言·c++·算法·安全
mmsx17 小时前
Android 安全校验下沉到原生层:防 patch 与构建期自动化
android·安全·自动化
上海广测检测科技有限公司17 小时前
无线鼠标出口欧盟CE认证准备要点:RED指令下的射频、安全与电池义务梳理
经验分享·安全