Tooluck logoTooluck
SKILL.md

s3-minio-content-type-xss

Agent skill fromuphiago/recon-skills

Exploit public bucket Content-Type override for stored XSS on target origin.

How to install s3-minio-content-type-xss

install s3-minio-content-type-xss
# install the recon-skills pack with the skills CLI
npx skills add uphiago/recon-skills

# or add only this skill to Claude Code: copy the folder

recon/s3-minio-content-type-xss/

# into

~/.claude/skills/s3-minio-content-type-xss/ (all projects)

.claude/skills/s3-minio-content-type-xss/ (one project)

recon/s3-minio-content-type-xss/SKILL.md

MITFull file
1# S3/MinIO Content-Type Override to Stored XSS
2
3Exploit public cloud storage buckets (S3, MinIO, and compatible) by overriding the `Content-Type` response header via query parameters. When a target serves user-uploaded files from its own origin (e.g., `cdn.target.com` or `target.com/uploads/`), a successful override turns a stored HTML/JS payload into same-origin stored XSS — bypassing every upload-time validation the application performed.
4
5## When to Use
6
7- Target serves user-uploaded files (images, avatars, attachments) from a public bucket.
8- Files are served under the target's own domain or subdomain (not a random storage domain).
9- Upload validation appears solid (extension whitelist, magic byte check, forced Content-Type) — the override bypasses all of these at serve time, not upload time.
10- The bucket URL responds to `?response-content-type=` with a changed Content-Type.
11- The bucket returns an AWS SignatureDoesNotMatch error leaking the real bucket host and region.
12
13## Prerequisites
14
15- `terminal` with curl and python3.
16- Identify at least one public object URL served from storage.
17- For S3 exploitation: your own AWS account credentials (free tier sufficient).
18
19## How to Run
20
21```bash
22# Test if an object's Content-Type can be overridden (MinIO and compatible)
23curl --max-time 30 --connect-timeout 10 -skI "https://cdn.target.com/uploads/avatar123.png?response-content-type=text/html" | grep -i content-type
24…

Excerpt shown under the repository's MIT license.

More skills in recon-skills

Keep exploring

Similar skill repositories

nexu-io /

open-design
107k

The 1st Collaborative AI Design Agent Workspace. Local-first and open source. Create motion, prototypes, websites, apps, dashboards, presentations, images, and videos with your team and AI agents. Share work, exchange feedback, and iterate together in one workspace.

40 skills

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates