offensive-xxe

offensive-xxe is a skill for Claude Code, Codex from SnailSploit/Claude-Red. It costs 0 tokens per session (7,872 once invoked), scanned C, original, MIT.

A checklist for testing XML External Entity (XXE) vulnerabilities, a security flaw where unsafe XML processing can access files or make unwanted network requests.

In plain words
What is it for?
Use it when testing XML input in web applications, file uploads such as SVG or DOCX, SOAP or REST services, XInclude processing, and bug-bounty targets.
Why use it?
It helps security testers remember the main XXE entry points and testing approaches instead of relying on ad-hoc checks.

Skill for Claude CodeCodex

About the project

claude-red is a library of structured skills that give Claude specialized offensive-security methods for areas such as web vulnerabilities, shellcode, exploit development, and identity systems. It is intended for authorized red-team work, bug-bounty triage, security research, CTF preparation, and operator training. Its catalogue contains the project's skills for loading these security specializations into Claude.

SnailSploit/Claude-Red · 3,026 stars · on GitHub

Install

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.

agentmods
npx agentmods add skills/snailsploit/claude-red/offensive-xxe
Any agent
npx skills add SnailSploit/Claude-Red --skill offensive-xxe
Clone the repo
git clone --depth 1 https://github.com/SnailSploit/Claude-Red

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for offensive-xxe

README.md
[![agentmods](https://agentmods.dev/badge/skills/snailsploit/claude-red/offensive-xxe.svg)](https://agentmods.dev/skills/snailsploit/claude-red/offensive-xxe)
Your own site
<a href="https://agentmods.dev/skills/snailsploit/claude-red/offensive-xxe"><img src="https://agentmods.dev/badge/skills/snailsploit/claude-red/offensive-xxe.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 7,872 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 3 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.07872
Opus 5 $0.00000 $0.03936
Sonnet 5 $0.00000 $0.01574
Haiku 4.5 $0.00000 $0.00787

Measured 6d ago against content hash b56c15801faa, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade C, and why

offensive-xxe scanned grade C with 3 findings 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 6d 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.

Reaches for credential filesmediumPrivilege escalation

SSH keys, cloud credentials, git-credentials, .npmrc, /etc/shadow: reading these is how a config file becomes a credential leak.

<!DOCTYPE root [<!ENTITY xxe SYSTEM "file:///home/runner/.ssh/id_rsa">]>

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Cloud metadata endpointmediumServer-side request forgery

One request to 169.254.169.254 can return temporary IAM credentials.

S->>C: Request cloud metadata (169.254.169.254)

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -k https://kubernetes.default.svc/api/v1/namespaces/default/pods \
Skills/web/offensive-xxe/SKILL.md · 995 lines

How it starts

The opening of the file, as written. The whole thing — 995 lines — stays where its author put it; the contents beside it link to each section on GitHub.

SKILL: XML External Entity (XXE) Injection

Metadata

Description

XML External Entity injection testing checklist: classic XXE, blind XXE (out-of-band), XXE via file upload (SVG/docx), XXE in SOAP/REST, error-based XXE, XInclude attacks, and XXE filter bypass. Use for web app XXE testing and bug bounty.

Trigger Phrases

Use this skill when the conversation involves any of: XXE, XML external entity, blind XXE, out-of-band XXE, XXE file upload, SVG XXE, SOAP XXE, XInclude, entity bypass, XXE SSRF, XXE file read

Instructions for Claude

When this skill is active:

  1. Load and apply the full methodology below as your operational checklist
  2. Follow steps in order unless the user specifies otherwise
  3. For each technique, consider applicability to the current target/context
  4. Track which checklist items have been completed
  5. Suggest next steps based on findings

Full Methodology

XML External Entity (XXE) Injection

Shortcut

  • Find data entry points that you can use to submit XML data.
  • Determine whether the entry point is a candidate for a classic or blind XXE. The endpoint might be vulnerable to classic XXE if it returns the parsed XML data in the HTTP response. If the endpoint does not return results, it might still be vulnerable to blind XXE, and you should set up a callback listener for your tests.
  • Try out a few test payloads to see if the parser is improperly configured. In the case of classic XXE, you can check whether the parser is processing external entities. In the case of blind XXE, you can make the server send requests to your callback listener to see if you can trigger outbound interaction.
  • Try to exfiltrate a common system file, like /etc/hostname.
  • You can also try to retrieve some more sensitive system files, like /etc/shadow or ~/.bash_history.
  • If you cannot exfiltrate the entire file with a simple XXE payload, try to use an alternative data exfiltration method.
  • See if you can launch an SSRF attack using the XXE.

Read the full file on GitHub · 995 lines

Changes

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.

  1. 6d ago First seen · 995 lines · 0 tokens per session scan C b56c15801faa

Subscribe to this mod's changes

offensive-xxe is a skill published in the GitHub repository SnailSploit/Claude-Red (3,026 stars, last pushed 6d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 7,872 tokens. A static security scan graded it C with 3 findings (reaches for credential files, cloud metadata endpoint, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

app-store-opportunity-research

Full-pipeline iOS App Store opportunity research. Discovers underserved niches, analyzes competitor gaps, estimates revenue, produces scored top-3 opportunity reports, and writes MVP PRDs — all through browser and web research. Use when the user wants to find profitable iOS app ideas, research App Store charts…

robertguss/claude-code-toolkit · 130 tokens

code-documenter

Expert documentation generator for coding projects. Analyzes codebases to create thorough, comprehensive documentation for developers and users. Supports incremental updates, multi-audience documentation, architecture decision records, and documentation health tracking. Works with any project type (APIs, CLIs, web…

robertguss/claude-code-toolkit · 87 tokens

ghost-writer

Produce first drafts that match a writer's authentic voice using their Voice DNA Document. Consumes DNA documents from writing-dna-discovery skill. Generates 2 meaningfully different drafts with headlines, confidence assessment, decision notes, and DNA refinement suggestions. Collaborative partner that evaluates…

robertguss/claude-code-toolkit · 77 tokens

app-store-listing-optimizer

Optimize iOS App Store and Google Play Store listings for maximum discoverability and conversion. Perform competitive keyword research, craft keyword-optimized titles/subtitles/descriptions, design screenshot sequences, and generate A/B test variants. Use when the user has a built app and needs to write or improve…

robertguss/claude-code-toolkit · 137 tokens

paywall-pricing-optimizer

Design effective paywalls, structure subscription tiers, and optimize pricing for mobile apps. Covers monetization model selection, paywall screen design, pricing psychology, A/B testing strategy, and RevenueCat/StoreKit/Google Billing integration. Use when the user wants to monetize an app, design a paywall, choose…

robertguss/claude-code-toolkit · 143 tokens

dhh-writing

This skill should be used when writing in the distinctive style of David Heinemeier Hansson (DHH). It applies when creating blog posts, technical articles, business content, manifestos, or any prose requiring a clear, punchy, opinionated style.

robertguss/claude-code-toolkit · 56 tokens