xalgorix/xalgorix is a self-hosted AI penetration-testing tool in which an LLM agent performs reconnaissance, looks for vulnerabilities, and coordinates exploitation, while a separate verifier re-tests findings before reporting them. It is for security teams, ethical hackers, and bug bounty work using a private, bring-your-own-LLM setup. The catalogue skills extend the agent's pentesting workflow.
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 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/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<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="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Data Exfiltration · line 249 Code enumerates, copies, or searches environment variables for secrets. Bulk environment access can collect credentials unrelated to the skill's stated purpose.Fix: Read only explicitly required environment variables by name. Avoid enumerating or copying the full environment, and never log or transmit credentials to untrusted destinations.
- medium Excessive Agency · line 30 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
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.1 | $0.00034 | $0.03175 |
| Opus 5.5 | $0.00014 | $0.01270 |
| Sonnet 5.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 1mo 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.
- 1mo 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 (1,217 stars, last pushed today), licensed Apache-2.0. It adds 34 tokens to every session and 3,175 once invoked, about $0.0001 per session on Opus 5.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.
analyzing-ios-app-security-with-objection
Performs runtime mobile security exploration of iOS applications using Objection, a Frida-powered toolkit that enables security testers to interact with app internals without jailbreaking. Use when assessing iOS app security posture, bypassing client-side protections, dumping keychain items, inspecting filesystem…
conducting-full-scope-red-team-engagement
Plan and execute a comprehensive red team engagement covering reconnaissance through post-exploitation using MITRE ATT&CK-aligned TTPs to evaluate an organization's detection and response capabilities.
pentest
Supervised authorized pentest: scope, route, validate, report.
web-app
Web application testing: injection and client-side flaws.
api-testing
Test REST, GraphQL, SOAP, and WebSocket API surfaces.