What problem does it solve? JavaScript applications that deep-merge user-controlled JSON can let attackers inject properties into Object.prototype, leading to DOM XSS, remote code execution, and authorization bypass. This Skill provides a structured workflow to find pollution sources, identify exploitable gadgets, and confirm impact with evidence. ## Core Features & Use Cases - Client-Side Detection and Exploitation: Test URL and hash-based pollution vectors, use DOM Invader to find gadgets, and achieve DOM XSS through sinks like innerHTML and jQuery $.html(). - Server-Side Exploitation: Send proto and constructor.prototype JSON payloads to Node.js APIs, then escalate to RCE via EJS, Pug, and Handlebars template gadgets or child_process properties. - Automated Scanning Script: Run the bundled Python agent to test JSON and query-parameter pollution over HTTP and statically scan JavaScript source files for dangerous merge patterns like lodash _.merge and jQuery deep extend. - Use Case: During an authorized assessment of a Node.js API, send {"proto": {"status": 510}} to a merge endpoint; if the response status changes to 510, server-side pollution is confirmed, then chain an EJS escapeFunction gadget to demonstrate RCE. ## Quick Start Ask the agent to test the target API endpoint for prototype pollution using the bundled scanning script and report any confirmed gadgets with their impact.