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.
npx agentmods add skills/xalgorix/xalgorix/performing-jwt-none-algorithm-attacknpx skills add xalgorix/xalgorix --skill performing-jwt-none-algorithm-attackgit clone --depth 1 https://github.com/xalgorix/xalgorixWrote 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.
[](https://agentmods.dev/skills/xalgorix/xalgorix/performing-jwt-none-algorithm-attack)<a href="https://agentmods.dev/skills/xalgorix/xalgorix/performing-jwt-none-algorithm-attack"><img src="https://agentmods.dev/badge/skills/xalgorix/xalgorix/performing-jwt-none-algorithm-attack.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00034 | $0.03175 |
| Opus 5 | $0.00017 | $0.01588 |
| Sonnet 5 | $0.00007 | $0.00635 |
| Haiku 4.5 | $0.00003 | $0.00317 |
Grade A, and why
performing-jwt-none-algorithm-attack scanned grade A with 1 finding 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 4d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
response = requests.get( How it starts
The opening of the file, as written. The whole thing — 350 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Performing JWT None Algorithm Attack
Overview
The JWT none algorithm attack exploits a vulnerability in JSON Web Token libraries that accept tokens with the alg header set to none, effectively bypassing signature verification. When a server processes a JWT with "alg": "none", it treats the token as valid without checking any cryptographic signature, allowing attackers to forge tokens with arbitrary claims such as escalated privileges, impersonated users, or extended expiration times. This vulnerability was first disclosed by Tim McLean in 2015 and has affected multiple JWT libraries across languages.
When to Use
- When conducting security assessments that involve performing jwt none algorithm attack
- When following incident response procedures for related security events
- When performing scheduled security testing or auditing activities
- When validating security controls through hands-on testing
Most Often Missed & How to Confirm
- alg casing/omission: test
none,None,NONE,nOnE, and a header with noalgat all - allowlists that only block lowercase "none" still fall. - Signature-segment variants: try an empty sig, a trailing-dot-only sig, and a leftover original signature - some libraries accept each differently.
- Claim edits matter: flip
role/is_admin/subwhile keepingiss/aud/expvalid so the token passes non-signature checks. - Chain to confusion/weak secret: if
noneis blocked, try RS256→HS256 confusion and HMAC secret brute-force before concluding safe. - kid/jwk header injection: CVE-2018-0114-style embedded
jwkandkidpath traversal can supply attacker keys.
How to confirm a hit (avoid false negatives): the forged token must return authenticated/privileged data from a protected endpoint (e.g., an admin route returns 200 with admin data), not merely avoid a 401 - compare against an unauthenticated baseline. Don't conclude negative until you've tried: all none casings, every signature-segment form, claim manipulation, and the HS256-confusion and weak-secret fallbacks.
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.
- 4d ago First seen · 350 lines · 34 tokens per session scan A 85d6dc29a384
performing-jwt-none-algorithm-attack is a skill published in the GitHub repository xalgorix/xalgorix (955 stars, last pushed today), licensed Apache-2.0. It adds 34 tokens to every session and 3,175 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
bypassing-authentication-with-forced-browsing
Discovering and accessing unprotected pages, APIs, and administrative interfaces by enumerating URLs and bypassing authentication controls during authorized security assessments.
Web Application Security Testing
OWASP Top 10 testing, injection vulnerability detection, API security assessment, authentication testing, and web vulnerability reporting for authorized assessments.
pentest
Supervised authorized pentest: scope, route, validate, report.
api-testing
Test REST, GraphQL, SOAP, and WebSocket API surfaces.
business-logic
Test workflows, state transitions, pricing, and concurrency.
identity-auth
Test identity, authentication, authorization, and sessions.