CtrlK
BlogDocsLog inGet started
Tessl Logo

exploit-xxe

XML External Entity (XXE) injection — local file reading via XML parsers, SOAP/WSDL API exploitation, blind out-of-band exfiltration, SVG/DOCX/XLSX upload XXE. Use for any challenge involving XML processing, SOAP endpoints, WSDL services, or XML-based file upload parsing.

70

Quality

86%

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

76%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, concise XXE reference with copy-paste-ready payloads across all major vectors. Its main weakness is workflow sequencing and validation: the batch file-read loop and blind-XXE exfiltration lack explicit 'confirm reflection' / 'check listener' checkpoints, which caps workflow clarity.

Suggestions

Add an explicit detection-before-exploitation sequence (e.g., 'First confirm XML is parsed and reflected with a benign entity, then escalate to file:// reads') with a numbered workflow before the payload sections.

Insert a validation step after the blind XXE example showing how to confirm exfiltration (e.g., 'grep the listener log for the ?d= parameter and base64-decode it') rather than leaving only a bare '# 3. Check listener' comment.

Trim the opening paragraph that re-describes what XXE is, since it duplicates the frontmatter description — let the section headers carry that load.

DimensionReasoningScore

Conciseness

The body is mostly lean and code-driven with minimal conceptual padding, but the opening paragraph ('Exploits XML parsers that process external entity definitions, enabling local file reading, SSRF, or denial of service...') restates what the description already covers and could be trimmed — slightly above the midpoint but not the leanest possible.

4 / 5

Actionability

Every section is copy-paste-ready curl/zip commands with full payloads — 'curl -s ... -d '<?xml...<!ENTITY xxe SYSTEM "file:///etc/passwd">...'' — covering detection, basic file read, SOAP, SVG/DOCX/XLSX upload, and blind OOB XXE, matching the fully-executable top anchor.

5 / 5

Workflow Clarity

Sections are topical but lack explicit sequencing and validation checkpoints; the 'Read sensitive credential/config files' batch loop iterates curl over many files with no 'confirm reflection first' or 'check listener for exfiltrated data' validation step for the blind case (the final '# 3. Check listener' is only a bare comment), so per the rubric's destructive/batch cap it cannot exceed 3.

3 / 5

Progressive Disclosure

The single self-contained file is well-organized into clearly headed sections (Detection, Basic XXE, SOAP, File Upload, Blind XXE, Content Types, Pitfalls) with no bundle files to over-nest, giving good structure and easy navigation, though it is monolithic rather than split across one-level-deep references.

4 / 5

Total

16

/

20

Passed

Description

96%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.

The description is highly specific, trigger-rich, and answers both what and when with concrete phrases — a strong top-tier description. The only minor gap is that some 'when' trigger terms (e.g. 'xml processing') are broad enough to risk slight overlap with related injection skills.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'local file reading', 'SOAP/WSDL API exploitation', 'blind out-of-band exfiltration', 'SVG/DOCX/XLSX upload XXE' — giving comprehensive coverage of the XXE attack surface rather than vague abstractions.

5 / 5

Completeness

Explicitly answers both 'what' (the enumerated XXE attack types) and 'when' via 'Use for any challenge involving XML processing, SOAP endpoints, WSDL services, or XML-based file upload parsing', matching the top anchor with concrete trigger phrases.

5 / 5

Trigger Term Quality

The 'Use for...' clause and the subdomain when_to_use provide comprehensive natural terms including 'xxe', 'xml injection', 'soap', 'wsdl', 'svg upload', 'docx upload', 'xml api', plus file-extension-adjacent synonyms users would naturally say.

5 / 5

Distinctiveness Conflict Risk

The XXE/SOAP/WSDL/XML-upload niche is clearly distinct from generic web or file skills, but 'xml processing' and 'xml api' are broad enough to create minor overlap risk with adjacent web-injection skills, so it sits just below the fully-distinct top anchor.

4 / 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

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
PurpleAILAB/Decepticon
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.