@@ -836,6 +836,26 @@ const invalid = [
836836 json : '[{"__proto__":1},{}]' ,
837837 message : 'Cannot parse an object with a `__proto__` property'
838838 } ,
839+ {
840+ name : 'prototype pollution via null-prototype object' ,
841+ json : '[["null","__proto__",1],{}]' ,
842+ message : 'Cannot parse an object with a `__proto__` property'
843+ } ,
844+ {
845+ name : 'nested prototype pollution via null-prototype object' ,
846+ json : '[{"data":1},["null","__proto__",2],{"polluted":3},true]' ,
847+ message : 'Cannot parse an object with a `__proto__` property'
848+ } ,
849+ {
850+ name : 'prototype pollution via Object wrapper' ,
851+ json : '[["Object",{"__proto__":1}],{}]' ,
852+ message : 'Cannot parse an object with a `__proto__` property'
853+ } ,
854+ {
855+ name : 'nested prototype pollution via Object wrapper' ,
856+ json : '[{"wrapped":1},["Object",{"__proto__":2}],{}]' ,
857+ message : 'Cannot parse an object with a `__proto__` property'
858+ } ,
839859 {
840860 name : 'bad index' ,
841861 json : '[{"0":1,"toString":"push"},"hello"]' ,
0 commit comments