advisory-mining
Mine GitHub Security Advisories and CVE databases for incomplete fixes, finding variant vulnerabilities in patched code or…
Detect prototype pollution via object merge/clone/assign operations where __proto__ or constructor.prototype keys can modify Object.prototype.
Claude Code
$ npx -y skills add ByamB4/find-cve-agent --skill prototype-pollution --agent claude-code
Codex
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a codex -y
Cursor
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a cursor -y
Gemini CLI
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a gemini-cli -y
GitHub Copilot
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a github-copilot -y
OpenCode
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a opencode -y
Windsurf
$ npx skills add ByamB4/find-cve-agent --skill prototype-pollution -a windsurf -y
name: prototype-pollution
description: "Detect prototype pollution via object merge/clone/assign operations where __proto__ or constructor.prototype keys can modify Object.prototype."
metadata:
filePattern:
- "**/*.js"
- "**/*.ts"
bashPattern:
- "grep.*(__proto__|prototype|constructor)"
- "semgrep.*pollution"
priority: 82Audit merge/clone/deep-assign utilities, query string parsers, JSON parsers, config mergers, and any package that recursively sets object properties from untrusted input.
**Key insight**: Only ~50% acceptance rate. Must demonstrate REAL impact beyond just polluting prototype.
grep -rn "Object\.assign\|Object\.defineProperty\|Object\.create" . grep -rn "merge\|extend\|deepMerge\|deepExtend\|deepAssign\|mixin" . grep -rn "clone\|deepClone\|cloneDeep\|deepCopy" . grep -rn "set\|setPath\|setValue\|lodash\.set\|_.set" . grep -rn "\[.*\]\s*=" . --include="*.js" # Bracket notation assignment
Look for patterns where object keys from user input are used as property paths:
// VULNERABLE: recursive merge without key filtering
function merge(target, source) {
for (const key in source) {
if (typeof source[key] === 'object') {
target[key] = merge(target[key] || {}, source[key]);
} else {
target[key] = source[key];
}
}
}grep -rn "__proto__\|constructor\|prototype" . | grep -i "filter\|block\|skip\|ignore\|reject" grep -rn "Object\.create(null)" . # Null prototype objects are safe grep -rn "hasOwnProperty\|Object\.keys\|Object\.entries" .
Prototype pollution alone is often not enough. Look for impact:
| Key | Effect | Impact | |-----|--------|--------| | `__proto__` | Sets properties on Object.prototype | All objects affected | | `constructor.prototype` | Same effect via constructor chain | All objects affected | | `constructor` | Overwrites constructor reference | Type confusion | | `toString` | Overwrites string conversion | TypeError on string operations | | `valueOf` | Overwrites value conversion | TypeError on comparisons | | `hasOwnProperty` | Overwrites property check | Logic bypass |
Open Source CVE Hunting Harness for Claude Code A Claude Code plugin that systematically finds real CVEs in open source packages through coordinated multi-agent security research.
Mine GitHub Security Advisories and CVE databases for incomplete fixes, finding variant vulnerabilities in patched code or…
Detect authentication and authorization bypass vulnerabilities including missing auth middleware, JWT algorithm confusion, IDOR,…
Detect code injection vulnerabilities in packages that dynamically generate or evaluate code via new Function(), eval(), vm.run*,…
Detect OS command injection via shell execution sinks where user-controlled input reaches system commands without proper…
Cross-pollination multiplier technique: find a vulnerability in one package, then search for the same pattern across all similar…
Detect decompression bomb vulnerabilities where compressed input can expand to exhaust memory, targeting buffer-based…
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…
Extract and decrypt Windows DPAPI-protected secrets (Credential Manager, browser logins/cookies, Wi-Fi credentials, KeePass keys)…
Clean and finalize authorized natural-language text intended for readers by auditing suspicious invisible Unicode and rewriting…