Recon Skills is a pack of security-testing skills covering reconnaissance, web applications, APIs, authentication, vulnerability validation, cloud infrastructure, and reporting. Security professionals use it for authorized assessments of systems they own or have written permission to test. The catalogue entries are individual skills from the pack.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add uphiago/recon-skills --skill hunt-sqligit clone --depth 1 https://github.com/uphiago/recon-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/uphiago/recon-skills/hunt-sqli)<a href="https://agentmods.dev/skills/uphiago/recon-skills/hunt-sqli"><img src="https://agentmods.dev/badge/skills/uphiago/recon-skills/hunt-sqli/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/uphiago/recon-skills/hunt-sqli"><img src="https://agentmods.dev/badge/skills/uphiago/recon-skills/hunt-sqli.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high YARA Match · line 209 YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).Fix: Remove offensive tool references and exploit code. Legitimate agent skills should not contain penetration testing tools, exploit frameworks, or reconnaissance utilities.
- medium Data Exfiltration · line 440 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00136 | $0.06106 |
| Opus 5.5 | $0.00054 | $0.02442 |
| Sonnet 5.5 | $0.00027 | $0.01221 |
| Haiku 4.5 | $0.00014 | $0.00611 |
Grade A, and why
hunt-sqli scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
axios.get('/report?from=' + startDate + '&to=' + endDate) Copies of this mod
1 near-identical copy found in the catalogue:
- hunt-sqli — 88% identical, 120 lines differ
How it starts
The opening of the file, as written. The whole thing — 464 lines — stays where its author put it; the contents beside it link to each section on GitHub.
When to Use
Use when the target has any endpoint that interacts with a database — search, filter, sort, login, ID-based lookups, API parameters, or any user input that could be used in a query. SQL injection (including NoSQL injection) remains one of the highest-paying vulnerability classes because it directly threatens data confidentiality, integrity, and availability. Every parameter in GET/POST/JSON/headers/cookies that reaches a backend database is a candidate. Highest-value targets: multi-tenant SaaS platforms, e-commerce/payment systems, search endpoints, analytics subdomains, and third-party plugins.
Crown Jewel Targets
SQL injection remains one of the highest-paying vulnerability classes in bug bounty because it directly threatens data confidentiality, integrity, and availability at scale.
Highest-value targets:
- SaaS platforms with multi-tenant databases — one injection can expose all customer data
- E-commerce/payment systems — PII, card data, transaction records
- Search endpoints — user-controlled input passed directly to queries (e.g., Rockstar Games
/search) - Analytics/tracking subdomains — often built fast, tested less (e.g.,
sctrack.email.[RIDESHARE_CO].cn) - Third-party plugins on enterprise installs — WordPress plugins, CMS extensions running on corporate domains (Uber's Huge IT Video Gallery)
- Internal tooling exposed externally — Apache Airflow, GitHub Enterprise, admin dashboards
- NoSQL backends (MongoDB) — often overlooked, same injection class, different syntax
Asset types that pay most:
- Production APIs with
/search,/filter,/sort,/reportparameters - Subdomains with legacy stacks (
.cn,.co,.ioregional variants) - Self-hosted open-sourcetools (Airflow, GitLab, Jenkins) on bounty scope
- Email tracking and analytics infrastructure
Attack Surface Signals
URL patterns that suggest injectable parameters:
/search?q=
/filter?category=
/sort?by=&order=
/report?start_date=&end_date=
/api/v1/items?id=
/index.php?id=
/gallery?album_id=
/track?uid=&campaign=
?page=&limit=&offset=
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 464 lines · 136 tokens per session scan A f2f1493f89de
hunt-sqli is a skill published in the GitHub repository uphiago/recon-skills (1,317 stars, last pushed 1mo ago), licensed MIT. It adds 136 tokens to every session and 6,106 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
api-11-nosql-injection
API NoSQL injection testing: MongoDB operator injection ($ne, $gt, $regex, $where), blind NoSQL via $regex character extraction, JSON body injection in REST APIs, and GraphQL NoSQLi via filter arguments. Use when testing APIs using MongoDB or other NoSQL databases.
api-10-sqli
SQL injection testing skill for offensive security assessments and bug bounty hunting. Covers error-based, UNION-based, boolean/time-based blind, out-of-band, second-order, NoSQL, GraphQL, WebSocket, and JSON-operator SQLi. Includes WAF bypass techniques, database-specific exploitation (MySQL, MSSQL, PostgreSQL…
accounting-software-selection
Scores shortlisted accounting packages against 57 evidence-backed fields, emitted as CSV, SQL, JSON Schema or Notion on request. Use for choosing accounting software.
accounting-audit-system-builder
Routes an accounting or audit request to the right module skill, from software selection through monthly closing, asking only what is missing. Use for books of accounts or audit files.
graph-db-writes
Writing to the Neo4j attack-surface graph in RedAmon: the tenant-isolation MERGE key every entity node must carry, where graph methods live (mixins, not the client), and the schema places that must be updated together. A MERGE missing the tenant key silently merges one project's data into another's. Trigger: editing…
graphjin-env
Use when setting up a training or evaluation loop against a GraphJin agent environment — running the container, reading /health, driving episodes hosted or step-by-step or with your own agent over MCP, splitting train from eval, exporting trajectories, and deciding whether two rewards can be compared.