简单复现原型链污染

原型链污染是一种安全漏洞,通过修改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对象

相关推荐
南村群童欺我老无力.2 分钟前
鸿蒙PC开发的路由导航参数传递的类型安全陷阱
安全·华为·harmonyos
千里念行客24032 分钟前
锚定AI赛道释放红利:安凯微2026年Q1业绩显成色
大数据·人工智能·科技·安全
桌面运维家1 小时前
基于vDisk的高校实验室IDV云桌面安全管理方案
人工智能·安全
BizObserver1 小时前
从 SEO 到 GEO:2026 年品牌信息分发逻辑的颠覆性变革
大数据·运维·网络·人工智能·安全
Nice__J1 小时前
ISO26262功能安全——系统级安全设计
安全
FinTech老王1 小时前
逻辑删除不等于物理销毁:KingbaseES敏感数据标记与销毁实操指南
数据库·安全·oracle
小五传输2 小时前
内外网文件交换系统产品推荐:安全高效一体化,破解内外网传输难题
大数据·运维·安全
领航猿1号2 小时前
AI Coding 安全解决方案
网络·人工智能·安全
aramae2 小时前
Linux多线程编程(二):互斥锁、线程安全与死锁剖析
linux·运维·服务器·网络·安全·centos
元智启4 小时前
企业AI应用从“能用”到“可信”:智能体评估体系与安全治理实战指南
人工智能·安全