简单复现原型链污染

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

相关推荐
运维有小邓@5 小时前
什么是重放攻击?如何避免成为受害者?
运维·网络·安全
夜珀6 小时前
AtomGit组织、权限与安全完全指南
安全
skilllite作者12 小时前
AI 自进化系统架构详解 (一):重新定义 L1-L3 等级,揭秘 OpenClaw 背后的安全边界
人工智能·安全·系统架构
夏冰加密软件12 小时前
【实测】文件加密软件解除保护的2种方法(以超级加密3000为例)
windows·安全
a11177613 小时前
网络安全检查表 docx 附文件
网络·安全·web安全
上海云盾商务经理杨杨13 小时前
DDoS攻击日志分析与攻击源定位实战
安全·ddos
dashizhi201516 小时前
电脑禁用U口、禁用USB端口、屏蔽移动存储设备使用的方法
windows·安全·电脑
东北甜妹17 小时前
Redis 知识总结
运维·nginx·安全
夫子樊17 小时前
资损防控与安全生产
安全
星幻元宇VR17 小时前
VR星际行走平台|沉浸式科普教育与未来体验的新入口
科技·学习·安全·生活·vr