CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

file-upload

Arbitrary file upload exploitation — webshell upload, extension bypass, content-type manipulation, and upload-to-RCE techniques.

Quality

79%

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

Fix and improve this skill with Tessl

tessl review fix ./packages/decepticon/decepticon/skills/standard/exploit/web/file-upload/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

83%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 tight, highly actionable offensive skill: every command is copy-paste-ready and token-efficient, with clean sectioning. The main weakness is workflow clarity — no validation that an upload was accepted and no feedback loop for iterating bypass techniques — which caps it despite the excellent actionability.

Suggestions

Add a verification checkpoint after each upload attempt (e.g., check the HTTP response body/status for acceptance or a blocklist error before assuming success).

Add an explicit feedback loop: if a technique fails, advance to the next bypass family (extension → content-type → magic bytes → .htaccess) rather than leaving the ordering implicit in section layout.

Consider moving the long extension/content-type bypass catalogs into a references/ file if the skill grows, keeping SKILL.md as the quick-start overview.

DimensionReasoningScore

Conciseness

The body is lean and code-first: a two-sentence purpose statement followed by commented, self-explanatory commands. It assumes Claude's competence (no explanation of what a webshell or .htaccess is beyond one-line 'why' comments), so every token earns its place — matches the anchor-5 example.

5 / 5

Actionability

Every section is copy-paste-ready bash: discovery greps, a webshell one-liner, an executable extension-fuzzing loop, curl content-type overrides, .htaccess upload, and post-exploitation extraction commands. The common cases are fully covered with executable code, matching anchor 5; no pseudocode or gaps.

5 / 5

Workflow Clarity

A sensible sequence exists (Discovery → upload → bypass techniques → post-exploitation) and the PHP section has one explicit checkpoint (HTTP 200 probe loop), but uploads are never validated for acceptance vs. rejection and there is no feedback loop telling Claude to iterate to the next bypass technique on failure — checkpoints are otherwise implicit, matching anchor 3 rather than 4.

3 / 5

Progressive Disclosure

No bundle files exist; the skill is a single ~100-line file with clear, well-ordered section headers and zero reference nesting. Good structure and easy navigation, but at ~100 lines (above the under-50-lines simple-skill exception) the technique catalog could arguably live in a reference file — solidly anchor 4.

4 / 5

Total

17

/

20

Passed

Description

66%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 specific, well-scoped description with concrete technique names and good trigger terms, but it answers only 'what this does' — it lacks an explicit 'Use when...' clause, which caps completeness at 3. Adding trigger guidance and a few more natural phrasings would lift it substantially.

Suggestions

Append a trigger clause such as 'Use when a target exposes a file upload endpoint, or when the user mentions webshells, upload bypasses, or upload-to-RCE.'

Add one or two more natural trigger phrases (e.g., 'shell upload', 'malicious file upload', 'image upload bypass') to broaden keyword coverage.

Optionally mention additional technique families surfaced in the body (.htaccess tricks, magic-byte polyglots) to reach comprehensive capability coverage.

DimensionReasoningScore

Specificity

Names the domain ('Arbitrary file upload exploitation') and lists several concrete techniques — 'webshell upload, extension bypass, content-type manipulation, and upload-to-RCE techniques'. Not a 5 because coverage has minor gaps (e.g., .htaccess tricks and polyglot/magic-byte techniques shown in the body are not surfaced); clearly above 3 since more than 1-2 specific actions are listed.

4 / 5

Completeness

The 'what' is clear and concrete (upload webshells via extension/content-type bypasses to achieve RCE), but there is no 'Use when...' clause or equivalent explicit trigger guidance in the description, which caps completeness at 3 per the rubric guideline.

3 / 5

Trigger Term Quality

Includes natural terms users would say: 'file upload', 'webshell upload', 'extension bypass', 'upload-to-RCE'. Not 5 because common variations like 'shell upload', 'upload bypass', or 'malicious file upload' are missing; well above 3 given the term set is domain-typical rather than generic.

4 / 5

Distinctiveness Conflict Risk

The niche is clear (file upload exploitation leading to RCE) with distinct triggers unlikely to fire for unrelated skills. Only minor overlap risk with adjacent webshell/RCE or general web-exploitation skills, so 4 rather than 5.

4 / 5

Total

15

/

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

PurpleAILAB/Decepticon

Path

packages/decepticon/decepticon/skills/standard/exploit/web/file-upload/SKILL.md

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.