Injection Vulns logo

Injection Vulns

Community
zhaji2333
injection-vulns

当发现参数拼接SQL、动态排序/筛选、JSON查询条件可控、模板渲染、命令执行点、搜索/统计/自动补全接口时调用,进行SQL/NoSQL/命令/SSTI/表达式注入的深度挖掘。命中场景:搜索框、排序参数、登录绕过、导出条件、文件名参数、模板/报表生成、爬虫URL参数。

Overview

Publisherzhaji2333
RepositoryCkSKILLS
Skill nameinjection-vulns
Stars
123
Forks
16
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by zhaji2333 on GitHub. Read the source before you install it.

Installation

Install the Injection Vulns AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/zhaji2333/CkSKILLS/tree/main/.agents/skills/injection-vulns
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/zhaji2333/CkSKILLS.git /tmp/CkSKILLS
mkdir -p .claude/skills
cp -r /tmp/CkSKILLS/.agents/skills/injection-vulns .claude/skills/injection-vulns
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Injection Vulns in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Injection Vulns on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Injection Vulns is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

injection-vulns — 注入类漏洞专项深度挖掘

何时调用(触发条件)

  • 参数直接拼接到 SQL / NoSQL 查询(搜索、筛选、排序、分页、导出条件)
  • JSON 查询条件可控({"$gt":0} 等 MongoDB 风格)
  • 用户输入进入 shell 命令(exec/system/ProcessBuilder、ping/curl/文件名拼接)
  • 用户输入进入模板引擎(Jinja2/Velocity/Freemarker/Thymeleaf)
  • 用户输入进入表达式解释器(SpEL/OGNL/EL/MVEL)
  • 危险函数出现在代码审计结果中(见 source-code-audit)

一、漏洞类型全景

类型危险函数/场景挖掘要点
C1. SQL注入拼接SQL、动态排序响应差异验证(错误/延迟/条数)
C2. NoSQL注入JSON查询条件可控类型替换、全量查询
C3. 命令注入exec/system/ProcessBuildershell拼接、管道符
C4. 模板注入(SSTI)Jinja2/Velocity/Freemarker用户输入进入模板渲染
C5. 表达式注入SpEL/OGNL/EL可控片段进入解释器

二、常见场景清单(搜索/查询类)

场景漏洞类型挖掘要点
站内搜索SQL注入/XSS/信息泄露搜索词拼接、搜索结果反射
高级筛选/排序SQL注入/NoSQL注入order by注入、筛选条件可控
自动补全/联想信息泄露/用户枚举补全接口泄露敏感数据
数据统计/图表SQL注入/越权统计维度可控、跨权限聚合
ES/Solr搜索查询注入/未授权DSL注入、搜索接口暴露

三、接口 Fuzz 技巧(参数污染与类型混淆)

参数污染:
  ?id=1&id=2  → 看哪个生效
  ?id[]=1&id[]=2 → 数组化
  ?id=1,2,3 → 批量查询

类型混淆:
  id=1 → id="1" → id={"$gt":0} → id[]=1

编码绕过:
  Unicode: \u002e\u002e/ (../)
  双重URL编码: %252e%252e%252f

隐藏参数:
  debug=1 / test=1 / admin=1
  _method=PUT / X-HTTP-Method-Override

批量操作:
  ids=1,2,3,4,5 一次查多个
  page=-1 / limit=99999 绕过分页

四、SQL 注入绕过技术

大小写:SeLeCt / 双写:selselectect
注释:/**/、/*!*/、--+、#
编码:URL编码、十六进制、Unicode
等价函数:substr→mid、ascii→ord

五、命令注入绕过技术

分隔符:| / || / & / && / ; / %0a
空格:${IFS} / $IFS$9 / %09 / {cat,/etc/passwd}
通配符:/???/??t /etc/passwd

六、验证要点

  • 响应差异对比:基线请求 vs 注入请求的状态码/响应大小/错误信息/响应时间
  • 时间盲注:SLEEP(5) / pg_sleep(5) / WAITFOR DELAY '0:0:5' 验证
  • 报错注入:updatexml / extractvalue / 类型转换错误
  • NoSQL:{"$ne":null}、{"$where":"1==1"}、数组/类型替换
  • SSTI:{{7*7}}、${7*7}、<%= 7*7 %> 探测
  • 命令注入:id、whoami、DNSLog 外带
  • 所有注入点至少尝试到 Level 4 绕过(见 CLAUDE.md 1.1 第五节)

七、修复建议

  • SQL:预编译/参数化查询,动态排序用白名单映射
  • NoSQL:禁止 $ 运算符进入查询条件,类型强校验
  • 命令:白名单命令 + 参数数组传递,禁止 shell 拼接
  • SSTI:模板引擎关闭危险特性(Jinja2 禁用 __class__ 链)
  • 表达式:禁止用户可控片段进入 SpEL/OGNL/EL 解释器

八、输出与报告要点

  • 完整 PoC(curl 命令),标注注入点参数与 payload
  • 差异对比证据(基线响应 vs 注入响应)
  • 影响面:可读取的库表、可执行的命令、可拿到的数据量
  • 根因分析:输入点 → 传播链 → Sink

Frequently asked questions

What does the Injection Vulns AI skill do?

当发现参数拼接SQL、动态排序/筛选、JSON查询条件可控、模板渲染、命令执行点、搜索/统计/自动补全接口时调用,进行SQL/NoSQL/命令/SSTI/表达式注入的深度挖掘。命中场景:搜索框、排序参数、登录绕过、导出条件、文件名参数、模板/报表生成、爬虫URL参数。

Why use Injection Vulns on TypingMind?

Because you install it once and use it with any model. Injection Vulns is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Injection Vulns in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/zhaji2333/CkSKILLS/tree/main/.agents/skills/injection-vulns. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Injection Vulns?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Injection Vulns?

As many as you like. As long as a model supports skills, you can use Injection Vulns with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Injection Vulns AI skill free?

Yes. It is published on GitHub by zhaji2333 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇