简单复现原型链污染

原型链污染是一种安全漏洞,通过修改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 小时前
EasyBR 指纹浏览器深度体验:多账号运营的安全护城河
安全
码码哈哈0.01 小时前
基于 RSA 非对称加密与挑战码机制的前端登录安全方案
前端·安全·状态模式
Magic-Yuan1 小时前
LLM 十大安全风险 - 概述
人工智能·安全
星幻元宇VR2 小时前
VR大空间:沉浸式数字体验引领新时代科普与教育升级
科技·学习·安全·vr·虚拟现实
其实防守也摸鱼3 小时前
DVWA--Brute Force (暴力破解)通关指南
服务器·网络·安全·靶场·教程·工具·dvwa
Lust Dusk4 小时前
最新激活win/off教程
安全
kang0x04 小时前
Certificate Authority - Writeup by AI
安全
fengci.4 小时前
CTF+随机困难部分
android·开发语言·网络·安全·php
随身数智备忘录4 小时前
安全巡检执行率能解决哪些场景痛点?一套安全巡检执行率提升方案实战
安全
其实防守也摸鱼4 小时前
Upload-labs:部署靶场及Pass-01实战解析
服务器·网络·安全·web安全·教程·文件上传·工具