Guide · Agent skill
How to use the File Upload Vulnerability Checklist agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The offensive-file-upload skill gives an AI agent a structured checklist for testing file upload features in web applications, covering type bypasses, filename tricks, polyglot files, and archive attacks. It is aimed at security testers working on authorized penetration tests and bug bounty programs, and students learning how these vulnerabilities work. By the end of this guide you will know what the skill does, how to install it, how to trigger it with plain requests, and what to keep in mind before using it.
Quick start
- 1Download and unzip. Download the skill ZIP from this page and unzip it to get the offensive-file-upload folder containing SKILL.md.
- 2Place the folder. Move the folder to ~/.claude/skills/ for personal use, or to a project's .claude/skills/ folder.
- 3Or upload in the Claude apps. Go to Settings → Capabilities → Skills and upload the ZIP there instead.
- 4Confirm your scope. Make sure the target is one you have written permission to test or that is in scope for your bug bounty program.
- 5Ask a natural question. Describe the upload feature and mention a topic such as MIME bypass or SVG XSS in plain language.
- 6Work the checklist. Let the agent go through the steps, reporting results so it can track progress and suggest next steps.
What is an agent skill, and what does this one do?
An agent skill is a folder containing a SKILL.md file with instructions that an AI agent loads when a conversation matches the skill's topic. This skill's SKILL.md contains a file upload vulnerability methodology that the agent uses as an operational checklist.
Once the skill is active and a conversation touches on upload testing, the agent is instructed to load the full methodology, follow the steps in order unless you specify otherwise, consider which techniques fit the current target, track which checklist items are completed, and suggest next steps based on findings.
- Mechanisms: an overview of how file upload flaws lead to issues such as remote code execution, client-side attacks, and denial of service.
- Extension testing: alternate web shell extensions, double extensions, case tricks, and trailing characters.
- Content-Type and magic byte testing: header manipulation and forged file headers.
- Polyglot files: GIFAR, EXIF-embedded PHP, PDF with PHP, and SVG with JavaScript.
- Path and filename abuse: traversal, UNC paths, and injection payloads inside filenames.
- Archive testing: Zip Slip, symlink abuse, and tar permission tricks.
Install the offensive-file-upload skill
Download the skill ZIP from this page and unzip it. The skill folder is named offensive-file-upload and contains SKILL.md. For a personal setup, place the folder in ~/.claude/skills/. For a single project, place it in that project's .claude/skills/ folder.
You can also upload the ZIP in the Claude apps. Go to Settings, then Capabilities, then Skills, and upload the skill there.
- Personal install: ~/.claude/skills/offensive-file-upload/
- Project install: .claude/skills/offensive-file-upload/ inside your project
- Claude apps: Settings → Capabilities → Skills, then upload the ZIP
Trigger the skill with natural requests
The skill activates when your conversation involves its trigger phrases. These include file upload, MIME bypass, extension bypass, magic byte, path traversal upload, SVG XSS, polyglot, upload bypass, malicious upload, and web shell upload. You do not need to type these exactly; asking in plain language that mentions one of these topics is enough.
Give the agent context about the target and your authorization. The methodology asks the agent to consider applicability to the current target, so describing the upload feature helps it choose relevant techniques.
- "I'm running an authorized pentest. The profile picture upload accepts only JPEG and PNG. Which checks should I test first?"
- "Walk me through SVG XSS testing on our document upload endpoint, which is in scope."
- "The avatar upload seems to check Content-Type only. What MIME bypass techniques fit this?"
- "We've tested extension bypasses so far. What should we do next based on the results?"
What the agent will do during a test session
The skill follows a fixed workflow: load the methodology, work through the checklist in order, judge each technique against your target, track progress, and recommend next steps. Because the agent tracks completed items, you can return to a session and ask where you left off.
The methodology also lists testing prerequisites such as a collection of test files, an intercepting proxy like Burp Suite or ZAP, web shells for testing execution, and sandboxed converters for validation. Have these ready so the agent's suggestions can be acted on.
Safety notes: scope, scripts and network
The skill is offensive and is written for authorized penetration testing and bug bounty work. Only test systems you have written permission to test, or that are explicitly in scope for a bug bounty program. The source states that testing unauthorized systems is illegal.
The listed requirements are nothing, and the skill runs no scripts and makes no network calls. The skill is a set of instructions; any actual testing you perform happens through your own tools and targets.
- Use only against authorized, in-scope targets.
- The skill runs no scripts and uses no network access, according to its listing.
- Its requirements are not listed, so check your own tooling needs such as a proxy.
- It does not help you build secure upload handling.
Tips for getting useful results
Describe the upload function concretely: what file types are accepted, whether validation appears client-side or server-side, and any error messages you see. The methodology explicitly uses these indicators to decide which checks apply.
Work through the checklist in order unless you have a reason to skip ahead, and report findings back to the agent so it can suggest next steps.
- Share observed error messages and accepted types.
- Note whether validation seems to run in JavaScript or on the server.
- Ask the agent to summarize completed and remaining checklist items.
What people use it for
- Planning an authorized web application penetration test of a profile picture uploader.
- Reviewing an in-scope bug bounty upload endpoint for extension and Content-Type bypasses.
- Testing whether a document upload renders SVG files that could lead to stored XSS.
- Studying how polyglot files and archive tricks like Zip Slip work as a student.
Frequently asked questions
How do I install the offensive-file-upload skill?
Download the skill ZIP from this page and unzip it. Place the offensive-file-upload folder in ~/.claude/skills/ for personal use or in a project's .claude/skills/ folder, or upload the ZIP under Settings → Capabilities → Skills in the Claude apps.
Does the file upload skill require anything else to run?
The listing states no requirements and says the skill runs no scripts and uses no network. It is a set of instructions for the agent, so any testing tools you use, such as a proxy, are your own.
Is the offensive-file-upload skill free?
The listing shows the skill is licensed under MIT. The source does not state pricing details beyond that, so check the licence text on the source repository for specifics.
Can I use this skill on a website I don't own?
Only with written permission or when the target is explicitly in scope for a bug bounty program. The skill is offensive, and the source states that attacking websites without permission is illegal.
Why isn't the agent triggering on my question?
The skill activates on topics such as file upload, MIME bypass, extension bypass, magic byte, SVG XSS, polyglot, and web shell upload. Mention one of these topics clearly in your request and make sure the folder is in the correct skills directory.
Is this skill a good alternative to a general security scanner?
It is a checklist that guides an agent through manual upload testing techniques, not an automated scanner. It suits testers who want structured, step-by-step guidance, and it does not provide implementation help for building secure upload features.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you do authorized penetration testing, bug bounty work on in-scope upload endpoints, or you are learning how file upload vulnerabilities work. Pick something else if you need to build secure upload handling, want a simple upload feature, or would be testing systems you have no permission to test.
Download the skill