CtrlK
BlogDocsLog inGet started
Tessl Logo

hunt-api-misconfig

Hunt API security misconfiguration — mass assignment, prototype pollution, HTTP verb tampering. Mass assignment: send {is_admin:true, role:admin, verified:true} on profile/account/reset endpoints — server blindly applies. JWT signature/crypto forging (alg:none, key confusion, kid/jku) is owned by hunt-jwt-crypto; this skill covers only non-crypto JWT handling. Prototype pollution: __proto__ injection in JSON merge / Object.assign / lodash _.merge → polluted prototype reaches sink (RCE in Node, XSS in browser). HTTP verb: GET-bypass-CSRF, X-HTTP-Method-Override, TRACE enabled. Detection: API responses with extra fields, JWTs in headers (decode at jwt.io). CORS misconfiguration (reflect-any-origin, null origin, subdomain-regex bypass, postMessage) is owned by hunt-cors. Use when hunting API misconfigs, mass-assignment, prototype pollution (JWT crypto → hunt-jwt-crypto).

72

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Critical

Do not install without reviewing

SKILL.md
Quality
Evals
Security

Quality

Content

85%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, well-sequenced security hunting skill with concrete payloads and explicit validation feedback loops. Its main weakness is progressive disclosure: it is a long single-file document whose sizable attack catalogs would benefit from being split into referenced bundle files.

Suggestions

Move the OData and NSwag/Swagger attack catalogs into separate reference files (e.g. references/odata-bypasses.md, references/swagger-exposure.md) and keep SKILL.md as an overview that links to them one level deep.

Trim the OData/NSwag introductory paragraphs to the minimum context needed, since Claude already understands these technologies.

Consider extracting reusable payload wordlists (mass-assignment fields, __proto__ gadgets) into a scripts/ or references/ file to shorten the inline body.

DimensionReasoningScore

Conciseness

Mostly dense and actionable with minimal padding, but the OData and NSwag introductory paragraphs ('OData (Open Data Protocol) is the query layer behind...') explain context Claude largely already knows and could be trimmed.

4 / 5

Actionability

Copy-paste-ready payloads, curl probes, jq one-liners, and concrete parameter patterns cover the common cases across every attack class with no pseudocode.

5 / 5

Workflow Clarity

Multi-step hunt sequences are explicitly numbered with validation checkpoints ('Do not stop at a 200 response to __proto__; prove that polluted prototype state reaches a later operation', 'use errors as routing feedback') and escalation gates, satisfying the destructive/batch feedback-loop requirement.

5 / 5

Progressive Disclosure

The body is a ~260-line monolith with clear section headers but no bundle files or external references; large standalone attack catalogs (OData, NSwag) that belong in separate reference files are inlined rather than split out.

3 / 5

Total

17

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A dense, highly specific description that names concrete payloads and explicitly carves out scope boundaries against sibling skills. Its only weakness is a trigger-term list that omits HTTP verb tampering and could enumerate more synonyms.

Suggestions

Add 'HTTP verb tampering' to the 'Use when' trigger list so all three named attack classes appear as natural triggers.

Include a few more synonym/variation trigger phrases (e.g. 'verb tampering', 'method override') to round out keyword coverage.

DimensionReasoningScore

Specificity

Lists multiple concrete actions with specific payloads (mass assignment {is_admin:true, role:admin}, __proto__ injection, GET-bypass-CSRF, X-HTTP-Method-Override) across several attack classes, giving comprehensive coverage.

5 / 5

Completeness

Explicitly answers both what ('Hunt API security misconfiguration — mass assignment, prototype pollution, HTTP verb tampering') and when ('Use when hunting API misconfigs, mass-assignment, prototype pollution') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Good keyword coverage in the 'Use when' clause ('API misconfigs, mass-assignment, prototype pollution') with some synonym variation, but HTTP verb tampering is not surfaced as a trigger phrase and synonym coverage is not exhaustive.

4 / 5

Distinctiveness Conflict Risk

Clear niche with explicit ownership boundaries that delegate overlapping areas ('JWT signature/crypto forging... owned by hunt-jwt-crypto', 'CORS misconfiguration... owned by hunt-cors'), minimizing conflict risk.

5 / 5

Total

19

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
elementalsouls/Claude-BugHunter
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.