The vulnerability is a prototype pollution issue within the 'parse' JavaScript SDK. The analysis of the provided information and source code reveals multiple vulnerable functions. The advisory specifically points to SingleInstanceStateController.initializeState, where the use of an unsanitized className as an object key allows for direct modification of Object.prototype. A crafted className of __proto__ will cause the function to assign properties to the global Object.prototype.
Further investigation of the codebase, specifically ObjectStateMutations.ts, reveals two other functions with similar vulnerabilities. Both ObjectStateMutations.estimateAttributes and the internal nestedSet function (used by ObjectStateMutations.commitServerChanges) handle nested property paths by splitting a string by dots. Neither function sanitizes the resulting keys, making them vulnerable to prototype pollution if a key is __proto__. An attacker can exploit this by setting object properties with crafted keys (e.g., obj.set('__proto__.polluted', true)) or by controlling the server response during an object save operation. All three identified functions present a clear path to prototype pollution, with initializeState being the most direct vector as highlighted by the advisory.