简单复现原型链污染

原型链污染是一种安全漏洞,通过修改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 分钟前
数据库漏洞自动同步,KubeBlocks Addon 安全能力再升级
数据库·安全
其实防守也摸鱼19 分钟前
部署本地AI大模型--ollma
人工智能·安全·ai·大模型·软件工程·本地大模型
黎阳之光1 小时前
黎阳之光:港口智能体集群,重塑智慧港口新范式
大数据·人工智能·算法·安全·数字孪生
青Cheng序员石头1 小时前
AI Agent 真正危险的,不只是不靠谱的模型,还有被忽视的技能执行层
人工智能·安全·agent
Austindatabases1 小时前
阿里云MongoDB 部署安全吗? 多可用区怎么搞?
数据库·安全·mongodb·阿里云·云计算
雨奔1 小时前
Kubernetes Master-Node 通信全解析:路径、安全与配置
安全·容器·kubernetes
Bypass--1 小时前
当 AI 开始干活,安全如何破局
人工智能·安全·chatgpt
星幻元宇VR1 小时前
VR科普行走平台:沉浸式科普教育新趋势
学习·安全·生活·vr
草莓熊Lotso1 小时前
手搓工业级 C++ 线程安全日志系统:基于策略模式解耦,兼容 glog 使用风格
linux·运维·服务器·数据库·c++·安全·策略模式