saml-sso-assertion-attacks — Claude Code skill: testing SAML
A playbook for SAML SSO testing: which XML nodes are signed, how Audience and ACS checks behave, and where IdP/SP trust breaks down.
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a claude-codeWhat saml-sso-assertion-attacks does
The skill loads when a target signs users in through SAML: you see SAMLRequest, SAMLResponse, XML assertions or ACS endpoints, and the flow goes through an external IdP with browser POST or redirect binding.
Inside is a table of checks grouped by theme: signature validation (unsigned assertion accepted, wrong node signed, signature wrapping), weak Audience, Recipient, Destination or ACS validation, issuer trust and multi-tenant confusion, replay and freshness (InResponseTo, NotBefore, NotOnOrAfter), account mapping by email and case folding, and XML parser behaviour. A four-step triage follows: capture one full login round trip, inspect which nodes are signed and which attributes drive account binding, compare SP-initiated against IdP-initiated flows, then test replay and assertion placement confusion.
Related routes point to the XXE, OAuth/OIDC and auth-bypass skills. This is an offensive playbook, so run it only against systems you are allowed to test.
What it helps with
- check whether the SP accepts an unsigned SAML assertion
- find signature wrapping in an IdP XML response
- compare
Audience,RecipientandDestinationvalidation on the SP side - reproduce assertion replay when
InResponseTois not enforced - trace account binding by email with unverified attributes
Example prompts for the agent
- walk through the SAML login in this app: which nodes are signed, and can I slip in an unsigned assertion
- compare the SP-initiated and IdP-initiated flows and show where the Audience checks diverge
- test replay: weaken
NotOnOrAfterand resend the sameSAMLResponse
How to install saml-sso-assertion-attacks
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a claude-code2Manually: put the files in place
~/.claude/skills/saml-sso-assertion-attacks/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/saml-sso-assertion-attacks/
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a codex2Manually: put the files in place
.agents/skills/saml-sso-assertion-attacks/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a cursor2Manually: put the files in place
.cursor/skills/saml-sso-assertion-attacks/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install yaklang/hack-skills saml-sso-assertion-attacks2Manually: put the files in place
.github/skills/saml-sso-assertion-attacks/SKILL.md1Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a gemini-cli2Platform CLI
gemini skills install https://github.com/yaklang/hack-skills --path skills/saml-sso-assertion-attacksManually: put the files in place
.devin/skills/saml-sso-assertion-attacks/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about saml-sso-assertion-attacks
How do I install saml-sso-assertion-attacks in Claude?
Run npx skills add yaklang/hack-skills --skill saml-sso-assertion-attacks -a claude-code. The skill lands in ~/.claude/skills/saml-sso-assertion-attacks/SKILL.md.
What does saml-sso-assertion-attacks do?
It gives the agent a playbook for validating SAML assertion trust: signature coverage, audience and recipient checks, ACS handling, XML parsing weaknesses, and IdP/SP confusion.
When does this skill load?
When the target uses SAML-based SSO: SAMLRequest, SAMLResponse, XML assertions or ACS endpoints show up, and login goes through an external IdP.
Source text
SKILL.md · MIT
--- name: saml-sso-assertion-attacks description: >- SAML SSO assertion attack playbook. Use when testing signature validation, assertion wrapping, audience restrictions, ACS handling, XML trust boundaries, and enterprise SSO flaws. --- # SKILL: SAML SSO and Assertion Attacks — Signature Validation, Binding, and Trust Confusion > **AI LOAD INSTRUCTION**: Use this skill when the target uses SAML-based SSO and you need to validate assertion trust: signature coverage, audience and recipient checks, ACS handling, XML parsing weaknesses, and IdP/SP confusion. ## 1. WHEN TO LOAD THIS SKILL Load when: - Enterprise SSO uses SAML requests or responses - You see `SAMLRequest`, `SAMLResponse`, XML assertions, or ACS endpoints - Login flows involve an external IdP and browser POST/redirect binding ## 2. HIGH-VALUE MISCONFIGURATION CHECKS | Theme | What to Check | |---|---| | signature validation | unsigned assertion accepted, wrong node signed, signature wrapping | | audience and recipient | weak `Audience`, `Recipient`, `Destination`, or ACS validation | | issuer trust | wrong IdP accepted or multi-tenant issuer confusion | | replay and freshness | missing `InResponseTo`, weak `NotBefore` / `NotOnOrAfter` enforcement | | account mapping | email-only binding, case folding, unverified attributes | | XML parser behavior | XXE-like parser issues or unsafe transforms around SAML documents | ## 3. QUICK TRIAGE 1. Capture one full login round trip. 2. Inspect which XML nodes are signed and which attributes drive account binding. 3. Compare SP-initiated and IdP-initiated flows. 4. Test replay, altered attributes, and assertion placement confusion. ## 4. RELATED ROUTES - XML parser attack depth: [xxe xml external entity](../xxe-xml-external-entity/SKILL.md) - OAuth or OIDC SSO alternatives: [oauth oidc misconfiguration](../oauth-oidc-misconfiguration/SKILL.md) - Auth boundary issues after SSO: [authbypass authentication flaws](../authbypass-authentication-flaws/SKILL.md)
© yaklang · MIT · yaklang/hack-skills