injection-checking — Claude Code skill: routing injection tests
A router skill for injection testing: pick the right workflow based on where attacker-controlled input ends up.
npx skills add yaklang/hack-skills --skill injection-checking -a claude-codeWhat injection-checking does
injection-checking is the entry point for the injection category. Once input reaches a dangerous interpreter or execution environment, the skill helps you tell whether you are dealing with browser context, a database, a template engine, server-side requests, XML parsing, or system commands.
Inside is a map of related skills: XSS, SQLi, SSRF, XXE, SSTI, CMDi, NoSQL, deserialization, JNDI, expression language, CRLF, request smuggling, prototype pollution, type juggling, HTTP parameter pollution, XSLT, CSV formula injection, plus extra types such as SSI, LDAP and XPath. The recommended flow is simple: identify the final sink of the input first, then pick the skill matching that interpreter. Small payload samples and quick triage are merged into each main skill, so no separate payload router is needed.
Reach for it when you have not yet decided between XSS, SQLi, SSRF, XXE, SSTI, CMDi and NoSQL. If the input never reaches an interpreter, this router is not the tool you want.
What it helps with
- pick a testing workflow from the final sink of the input
- separate XSS, SQLi and SSRF when the starting point is unclear
- find the right skill for template engines and XML parsing
- navigate rarer types like CRLF and prototype pollution
- classify injection into system commands
Example prompts for the agent
- form input reaches SQL — which skill should I use?
- user input lands in a template engine, help me sort it out
- I can't tell if this is XSS or SSRF, point me in a direction
How to install injection-checking
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill injection-checking -a claude-code2Manually: put the files in place
~/.claude/skills/injection-checking/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/injection-checking/
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill injection-checking -a codex2Manually: put the files in place
.agents/skills/injection-checking/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill injection-checking -a cursor2Manually: put the files in place
.cursor/skills/injection-checking/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install yaklang/hack-skills injection-checking2Manually: put the files in place
.github/skills/injection-checking/SKILL.md1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill injection-checking -a gemini-cli2Platform CLI
gemini skills install https://github.com/yaklang/hack-skills --path skills/injection-checkingManually: put the files in place
.devin/skills/injection-checking/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill injection-checking -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about injection-checking
How do I install injection-checking in Claude?
Run npx skills add yaklang/hack-skills --skill injection-checking -a claude-code. The skill lands in ~/.claude/skills/injection-checking/SKILL.md.
What does injection-checking do?
It is a category router for injection. It helps determine where attacker-controlled input is consumed and picks the right deep-topic skill: XSS, SQLi, SSRF, XXE, SSTI, CMDi, NoSQL and others.
Do I need a separate payload router?
No. Small payload samples and quick triage are already merged into each main skill.
Source text
SKILL.md · MIT
--- name: injection-checking description: >- Entry P1 category router for injection testing. Use when routing between XSS, SQLi, SSRF, XXE, SSTI, command injection, and NoSQL injection workflows based on how attacker-controlled input is consumed. --- # Injection Testing Router This is the routing entry point when input reaches a dangerous interpreter or execution environment. After confirming this is an injection-class issue, use it to decide whether it is mainly browser context, database, template engine, server-side requests, XML parsing, or system commands. ## When to Use - Input reaches HTML, JS, SQL, templates, URL fetchers, XML parsers, or shell - You have not yet decided whether to start with XSS, SQLi, SSRF, XXE, SSTI, CMDi, or NoSQL - You need to choose the correct deep-topic skill based on input flow ## Skill Map - [XSS Cross Site Scripting](../xss-cross-site-scripting/SKILL.md) - [SQLi SQL Injection](../sqli-sql-injection/SKILL.md) - [SSRF Server Side Request Forgery](../ssrf-server-side-request-forgery/SKILL.md) - [XXE XML External Entity](../xxe-xml-external-entity/SKILL.md) - [SSTI Server Side Template Injection](../ssti-server-side-template-injection/SKILL.md) - [CMDi Command Injection](../cmdi-command-injection/SKILL.md) - [NoSQL Injection](../nosql-injection/SKILL.md) - [Deserialization Insecure](../deserialization-insecure/SKILL.md) - [JNDI Injection](../jndi-injection/SKILL.md) - [Expression Language Injection](../expression-language-injection/SKILL.md) - [CRLF Injection](../crlf-injection/SKILL.md) - [Extra Injection Types (SSI, LDAP, XPath)](./EXTRA_INJECTION_TYPES.md) - [Request Smuggling](../request-smuggling/SKILL.md) - [Prototype Pollution](../prototype-pollution/SKILL.md) - [Type Juggling](../type-juggling/SKILL.md) - [HTTP Parameter Pollution](../http-parameter-pollution/SKILL.md) - [XSLT Injection](../xslt-injection/SKILL.md) - [CSV Formula Injection](../csv-formula-injection/SKILL.md) ## Recommended Flow 1. First identify the final sink of the input 2. Then choose the topic skill that best matches that interpreter 3. Small payload samples and quick triage are merged into each main skill; no extra payload router is needed ## Related Categories - [file-access-vuln](../file-access-vuln/SKILL.md)
© yaklang · MIT · yaklang/hack-skills