SAML
SAML Forge
decode · attack · forge
← All Tools
SAML Token Input
↓ Decode
Clear
Load Sample
Parsed XML
Decode a token to see highlighted XML
Key Fields
Key fields will appear here after decode
Attributes
Attribute assertions will appear here after decode
Edit XML
modify before generating attacks
Re-format
↑ Refresh Preview
Attack Payloads
select · configure · generate
1
Signature Stripping
Remove <ds:Signature> block entirely — some SPs skip validation when no signature is present.
Strip target
All signatures
Response signature only
Assertion signature only
Removes every
<ds:Signature>
element found in the assertion.
Generate Payload
2
XML Signature Wrapping (XSW)
Valid signature covers decoy; SP processes attacker-controlled element. 3 variants.
Injection mode
Change NameID
Inject / overwrite attribute
Both
NameID value
Attribute name
Attribute value
Action
Add new attribute
Overwrite existing (same name)
XSW Variant
XSW1 — Wrapper
XSW2 — Duplicate
XSW3 — Advice
Generate Payload
3
Comment Injection
Insert <!----> inside an element's text — parsers (Xerces) strip comment nodes, concatenating the surrounding text nodes.
Target
NameID
AttributeValue (by name)
Custom element name
Attribute name
Element local name
Before comment
After comment
Result:
Vulnerable parsers (Java/Xerces) strip the comment node and concatenate text nodes — the SP sees the joined string.
Generate Payload
4
Attribute Injection
Add or overwrite any attribute in the AttributeStatement. Re-encodes the modified assertion.
Attribute Name
Attribute Value
Action
Add new attribute
Overwrite existing (same name)
Generate Payload
5
XSLT Injection
Inject a malicious <ds:Transform> — vulnerable SAML libraries (Xalan, Saxon) execute embedded XSLT during signature processing.
Payload type
System info (vendor/version probe)
File read
SSRF
RCE (Xalan Java extension)
Custom XSLT
Target
XSLT stylesheet body
Generate Payload
6
XXE in SAML
Inject DOCTYPE with external entity reference into SAML XML for server-side XXE exploitation.
Entity Type
File Read (/etc/passwd)
SSRF (HTTP request)
OOB (DNS exfil)
Blind (error-based)
Target URI / File
Generate Payload
Attack Output
Select an attack and click "Generate Payload"
Encode as:
Raw XML
Base64
Base64 + URL encode
Base64+Deflate (redirect binding)
Base64+Deflate + URL encode
✓ Copy