简单复现原型链污染

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

相关推荐
毕设源码-郭学长6 小时前
【开题答辩全过程】以 安全培训信息管理平台为例,包含答辩的问题和答案
安全
jieyu11198 小时前
网络、主机安全扫描工具
linux·安全·系统安全
FIN66689 小时前
昂瑞微冲刺科创板:创新驱动,引领射频芯片国产化新征程
前端·安全·前端框架·信息与通信·芯片
用户479492835691514 小时前
面试官:讲讲2FA 双因素认证原理
前端·后端·安全
Mintimate16 小时前
Vue项目接口防刷加固:接入腾讯云天御验证码实现人机验证、恶意请求拦截
前端·vue.js·安全
网安INF16 小时前
网络攻防技术:网络安全攻击概述
安全·web安全·网络安全·网络攻防
深盾安全18 小时前
C++实战:快速提取Android APK数字签名
安全
white-persist18 小时前
SQL 注入详解:从原理到实战
前端·网络·数据库·sql·安全·web安全·原型模式
AORO202518 小时前
防爆手机与普通手机的区别!
网络·5g·安全·智能手机·电脑·信息与通信
携欢19 小时前
Portswigger靶场之Exploiting a mass assignment vulnerability通关秘籍
前端·安全