CVE-2022-21449, known as Psychic Signature, is an improper ECDSA signature-verification vulnerability in the Libraries component of Oracle Java SE and Oracle GraalVM Enterprise Edition. Affected releases include Oracle Java SE 17.0.2 and 18, and Oracle GraalVM Enterprise Edition 21.3.1 and 22.0.0.2. The flaw is relevant to Java deployments that execute untrusted code in sandboxed Java Web Start applications or applets and rely on the Java sandbox for security. It can also be reached through APIs in the affected component, including where a web service supplies data to those APIs.
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
If you can’t patch tonight, do this now.
Patch, then assume compromise.
3 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (2 hidden).
Repository is a Python JWT security testing toolkit (“claimjumper”) rather than a single exploit for one product. It provides: (1) JWT decoding and vulnerability analysis with risk scoring (claimjumper/decoder.py, analyzer.py), (2) token forging (alg=none and HS256 with a provided secret) (forger.py), (3) multi-threaded HMAC secret brute forcing for HS256/384/512 using built-in/common secrets and optional wordlists (cracker.py plus wordlists/jwt_secrets.txt; also references a Wallarm wordlist path), (4) an “advanced_attacks” module that generates multiple CVE/pattern-based attack tokens (notably CVE-2022-39227 algorithm confusion, CVE-2018-0114 key injection, CVE-2022-21449 psychic signature, CVE-2020-28042 null signature bypass, plus kid/jku/x5u/jwks spoofing and timestamp tampering), (5) a fuzzing engine with payload libraries for path traversal, SQLi, NoSQLi, command injection, SSRF, etc. (fuzzer.py), and (6) optional live HTTP replay/testing and a playbook-style scanner using `requests` (http_tester.py) that can inject tokens into requests and look for canary/response changes; it logs to jwt_attack.log. The primary entry point is the Click-based CLI (claimjumper/cli.py) exposing commands like analyze, crack, forge/forge-none, advanced-attacks, fuzz, keygen, and full-audit. A standalone local HTML UI (jwt_analyzer.html) provides basic client-side decoding/forging guidance but does not itself perform signing. Overall purpose: generate and test malicious JWT variants against vulnerable JWT verification implementations and assist in auditing JWT configurations.
This repository is a proof-of-concept (PoC) exploit for CVE-2022-21449, a vulnerability in Java's ECDSA signature verification. The project is structured as a Spring Boot application with JWT-based authentication. It includes code to generate both valid and fake JWT tokens (the latter with a zeroed ECDSA signature), and demonstrates how, on vulnerable Java versions, the fake token is accepted as valid, allowing unauthorized access to protected endpoints. The main entry points are the DemoApplication (Spring Boot app) and JwtGenerator (console app for generating tokens). The application exposes two protected HTTP endpoints: '/protected/user' and '/protected/admin', which require specific roles. The exploit demonstrates that, due to the vulnerability, an attacker can craft a JWT with a zeroed signature and gain access to these endpoints without proper authorization. The repository includes all necessary keys and configuration files for demonstration purposes. This PoC is intended for educational use and highlights the importance of patching Java to mitigate this vulnerability.
This repository is a Proof-of-Concept (PoC) for CVE-2022-21449 (Psychic Signatures), which affects ECDSA signature verification in Java (and potentially other implementations). The PoC demonstrates how a malicious TLS server can present an invalid ECDSA signature (r = s = 0) that is accepted by a vulnerable client, allowing the TLS handshake to succeed without proper cryptographic validation. The repository includes a modified Go crypto library (crypto/ecdsa and crypto/tls) to simulate the vulnerability, a malicious TLS server implementation (go-server-test/main.go), and scripts to build the environment (build.sh). The server uses a certificate chain for www.google.com and disables key matching checks, making it possible to demonstrate the attack. The main attack vector is network-based, targeting clients that connect to the malicious server. The PoC does not weaponize the exploit but provides a clear demonstration of the vulnerability's impact.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
4 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.