Download for MacApple silicon, macOS 14+
Skill

nosql-injection

@thejefflarson Updated 2026-07-31

Detects MongoDB and other NoSQL queries that mix user input into operators or filters without validation. Use when writing MongoDB queries, Elasticsearch queries, or other NoSQL database operations that include user-supplied input. Also invoke when building query filters from request parameters or constructing aggregation pipelines with dynamic values.

llmssecurityskills

Install

With your agent

Install OMGSkills skill "thejefflarson/soundcheck:.claude/skills/nosql-injection" into this agent's normal skills directory: call the OMGSkills MCP get_install_plan tool for your agent and run the script it returns (it installs only the pinned commit and verifies SKILL.md), and stop if MCP or the pin is unavailable. Do not overwrite or change existing skills without asking me.

Manual command

git clone https://github.com/thejefflarson/soundcheck /tmp/soundcheck && ln -s /tmp/soundcheck/.claude/skills/nosql-injection ~/.claude/skills/nosql-injection

From README

NoSQL Injection Security Check (CWE-943) What this checks Protects against NoSQL injection where user input manipulates query operators or structure. Unlike SQL injection, NoSQL injection exploits operator injection ($gt, $ne, $regex) and JavaScript execution in database engines. Exploitation leads to authentication bypass, data exfiltration, and denial of service. Vulnerable patterns Query filter built by passing a deserialized request body or query object straight into the database client, letting the caller smuggle operators in place of values Use of $where, $expr, or $function with a string that incorporates user input Filter value that is allowed to be an object or array when the schema expects a primitive, enabling operator injection like a not-equal match against a credential field Aggregation pipeline stage built from raw caller-supplied data with no field allowlist Fix immediately Flag the vulnerable code and explain the risk.