简单复现原型链污染

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

相关推荐
网安蟹佬霸1 小时前
CTF Web方向解题全攻略:从信息收集到getshell(附实战payload与脚本)
android·前端·网络·安全·web安全·网络安全·网安
保密资质顾问说2 小时前
网络安全等级保护与涉密信息系统集成资质的区别及选型分析
运维·网络·经验分享·安全·web安全
网安蟹佬霸3 小时前
Webshell免杀与检测实战:从一句话木马到加密流量
android·安全·web安全·网络安全·黑客·网安·渗透测试·
Bruce_Liuxiaowei3 小时前
安全意识培训——大模型在安全培训中的创新应用
人工智能·安全·ai·智能体
QXWZ_IA3 小时前
化工园区安全定位如何做合规审查?
安全
志栋智能4 小时前
超自动化安全如何提升合规与审计效率?
运维·安全·自动化
新鲜势力呀5 小时前
Anthropic 网络安全技能实战应用指南
安全·web安全
数据知道5 小时前
网络安全实战:子域名枚举工具链——Subfinder、Amass 与证书透明度的艺术
安全·web安全·网络安全
小小龙学IT6 小时前
现代 C++ 内存管理与资源安全深度解析:从 RAII 到所有权模型
c++·安全
IT小盘7 小时前
25-让大模型安全调用外部工具-参数权限超时控制
前端·python·安全