JavaScript原型链污染
一、什么是原型链污染(JS)
原型链污染(Prototype Pollution)是一种安全漏洞,在 JavaScript 中可能会导致意外和不安全的行为。它利用了 JavaScript 中的原型继承机制,通过修改对象的原型链来污染或篡改目标对象的属性。
二、前置知识
2.1 JS对象
属性声明及调用格式如下
key:value //声明
classname.key //调用
方法声明及调用格式如下
methodname:function(){
……
} //声明
classname.methodname() //调用
2.11 通过类创建
类的声明与实例化和其他语言相似,如果不声明构造函数,则该函数仍存在但内容为NULL
class demo{
constructor(name, age) {
this.name = name;
this.age = age;
}
}
let person = new demo(ELITE,25);
// 访问对象的属性
console.log(person.name); // 输出:ELITE
console.log(person.age); // 输出: 25
2.12 字面量模式创建
JavaScript中对象的字面量模式定义类似于python中的字典,属性是键值对的组合,方法也以类似的形式定义示例如下
var person = {
name