{"id":"CVE-2026-102946","title":"joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards","summary":"joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.4, joserfc.jws.deserialize_json() accepts a JWS General JSON Serialization with an empty signatures …","severity":"critical","cvss":9.1,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N","cwe":["CWE-290","CWE-345","CWE-347"],"vendor":"authlib","product":"joserfc","affected":["joserfc < 1.7.4"],"published":"2026-10-15","updated":"2026-10-15","sourceUpdated":"2026-10-15T20:17:05.407","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-102946","references":[{"url":"https://github.com/authlib/joserfc/commit/f409f8f058225d7686acab6546c94593e4c1bfbe","label":"security-advisories@github.com"},{"url":"https://github.com/authlib/joserfc/releases/tag/1.7.4","label":"security-advisories@github.com"},{"url":"https://github.com/authlib/joserfc/security/advisories/GHSA-4pp3-559j-c5c2","label":"security-advisories@github.com"},{"url":"https://github.com/authlib/joserfc/security/advisories/GHSA-4pp3-559j-c5c2","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-102946.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-102946"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2553667"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-102946"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-102946"}],"tags":["nvd","cve.org","exploit-available","csaf","vex","red-hat"],"epss":0.00117,"epssPercentile":0.01639,"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"total","timestamp":"2026-10-15T19:52:38.661517Z"},"scores":{"nvd":9.1,"vendor":7.5},"ingestedAt":"2026-10-15T19:25:46.394Z","slug":"CVE-2026-102946","body":"## Overview\n\njoserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.4, joserfc.jws.deserialize_json() accepts a JWS General JSON Serialization with an empty signatures array as authenticated. The verify_general_json() loop performs no iterations for the empty array and returns success because no signature check failed, allowing an attacker without a signing key to supply an arbitrary payload that relying applications may treat as authentic. The issue affects the General JSON Serialization path; compact JWS and JWT decoding, Flattened JSON serialization, and JWE JSON processing do not follow this vulnerable path. This issue is fixed in version 1.7.4.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Vendor advisories\n\n- **Red Hat VEX** · Important · affected: Lightspeed Core, Migration Toolkit for Applications 8, OpenShift Lightspeed, Red Hat Ansible Automation Platform 2, Red Hat Enterprise Linux command line assistant, Red Hat OpenShift Virtualization 4, … · no fix planned: Lightspeed Core, Migration Toolkit for Applications 8, OpenShift Lightspeed, Red Hat Ansible Automation Platform 2, … · updated 2026-10-18 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-102946.json)","depth":"abyssal","depthScore":62,"depthScoreParts":{"impact":50.1,"likelihood":0,"exploitation":12,"ransomware":0},"changes":[{"seq":222712,"id":"CVE-2026-102946","ts":1792097058464,"field":"exploit_available","old":"false","new":"true"}]}