简单复现原型链污染

原型链污染是一种安全漏洞,通过修改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 小时前
可穿戴智能硬件在国家安全领域的应用
安全·智能硬件
yqcoder2 小时前
13. https 是绝对安全的吗
网络协议·安全·https
凉拌青瓜哈3 小时前
DVWA-LOW级-SQL手工注入漏洞测试(MySQL数据库)+sqlmap自动化注入-小白必看(超详细)
mysql·安全·网络安全
quweiie4 小时前
tp8.0\jwt接口安全验证
前端·安全·jwt·thinkphp
没有bug.的程序员5 小时前
JAVA面试宝典 -《安全攻防:从 SQL 注入到 JWT 鉴权》
java·安全·面试
学习溢出7 小时前
【网络安全】理解安全事件的“三分法”流程:应对警报的第一道防线
网络·安全·web安全·网络安全·ids
鹿鸣天涯7 小时前
《红蓝攻防:构建实战化网络安全防御体系》
安全·web安全
前端小巷子11 小时前
深入理解XSS攻击
前端·安全·面试
代码改变世界ctw12 小时前
2.2 TF-A在ARM生态系统中的角色
汇编·arm开发·安全·trustzone·atf·optee
Bruce_Liuxiaowei15 小时前
dict协议在网络安全中的应用与风险分析
网络·安全·web安全·伪协议