Code analysis
static source read inferred
Static code-analysis findings — hidden prompt content in shipped skill files, committed secrets, dynamic-exec sinks, and suspicious call-home endpoints — across the analyzed catalogue. Heuristic, pure, no code executed; every row deep-links to its source. Click a kind to filter.
51192 analyzed
7507 re-analysis due
995 not analyzable
1 not yet analyzed
4848 source gone
not analyzable
795 too large 200 no source
Running analyzer v33. The scanner changelog explains what each version detects and when it changed.
- hidden prompt 369
- committed secret 6298
- dynamic exec 12007
- obfuscation 3647
- suspicious endpoint 12542
- credential in log 718
- over-broad oauth scope 2556
- suspicious skill script 197
- bundled IDE extension 50
- skill file 190152
- HIGH hidden prompt OyadotAI/oya-browser skill: skill-exfil
auto-triggered secret→sink: `claude mcp add --transport http oya https://browser.getoya.ai/mcp/pool --header "Authorization: Bearer $OYA_API_KEY"` - HIGH credential in log jostoz/quitametadatos credential in log
console.log(` set EVM_PRIVATE_KEY=${claveNueva || process.env.EVM_PRIVATE_KEY}`); - MEDIUM suspicious endpoint naveenalavilli/nabsun 169.254.169.254 (cloud metadata)
['link-local metadata', 'http://169.254.169.254/latest/meta-data/'], - MEDIUM suspicious endpoint off-grid-ai/OGAD developer.mixpanel.com (telemetry)
docsUrl: 'https://developer.mixpanel.com/', - MEDIUM suspicious endpoint off-grid-ai/OGAD amplitude.com (telemetry)
docsUrl: 'https://amplitude.com/docs', - MEDIUM suspicious endpoint off-grid-ai/OGAD posthog.com (telemetry)
docsUrl: 'https://posthog.com/docs', - MEDIUM suspicious endpoint off-grid-ai/OGAD mcp.posthog.com (telemetry)
url: 'https://mcp.posthog.com/sse', - MEDIUM suspicious endpoint off-grid-ai/OGAD docs.sentry.io (telemetry)
docsUrl: 'https://docs.sentry.io/product/sentry-mcp/', - HIGH dynamic exec jonax1337/rookery-agent new Function()
return new Function(js + '\nreturn { phases: SLEEP_PHASES, progressFor: phaseProgress };')(); - HIGH dynamic exec jonax1337/rookery-agent new Function()
new Function('require', 'module', 'exports', outputFiles[0].text)((name) => bindings[name] ?? require(name), module, module.exports); - HIGH dynamic exec jonax1337/rookery-agent new Function()
new Function('require', 'module', 'exports', outputFiles[0].text)(require, module, module.exports); - HIGH dynamic exec jonax1337/rookery-agent new Function()
new Function('require', 'module', 'exports', outputFiles[0].text)((name) => bindings[name] ?? require(name), module, module.exports); - HIGH dynamic exec jonax1337/rookery-agent new Function()
return new Function(js + '\nreturn { ' + names.join(', ') + ' };')(); - HIGH dynamic exec jonax1337/rookery-agent new Function()
return new Function(...Object.keys(bindings), js + '\nreturn run;')(...Object.values(bindings)); - HIGH dynamic exec jonax1337/rookery-agent new Function()
const run = new Function('sessions', 'tasks', 'assignments', 'PER_GROUP', 'query', js + '\nreturn run();');