---
id: "CVE-2026-119283"
kind: "vulnerability"
aliases: ["CVE-2026-119283"]
title: "joserfc: unlimited JWE recipients let one request exhaust CPU"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["api-servers", "jose", "joserfc", "jwt", "package", "python"]
not_affected_if: ["no-jwe-decryption", "non-rsa-key-management", "not-exposed-to-untrusted-input"]
published_at: "2026-10-29T22:17:01+00:00"
first_seen_at: "2026-10-29T22:27:06+00:00"
updated_at: "2026-10-29T22:28:46+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-119283", "first_seen_at": "2026-10-29T22:27:06+00:00"}]
---

# joserfc: unlimited JWE recipients let one request exhaust CPU

joserfc is a Python library for JOSE standards such as JWE and JWS. Before version 1.7.5, decrypt_json() runs a private-key decryption for every entry in a JWE recipients array with no limit, so one request can force many expensive RSA operations.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version with `pip show joserfc`
- Find services that call `joserfc.jwe.decrypt_json` on untrusted input that use RSA key-management algorithms

## Fix

- `joserfc` `1.7.5`

## Timeline

- 2026-10-29T22:27:06+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-119283

## From the sources

joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.5, joserfc.jwe.decrypt_json() accepts a JWE General JSON Serialization recipients array without a count limit and calls decrypt_cek() for every entry. An unauthenticated attacker who can submit a JWE to an endpoint using an RSA key-management algorithm can choose the number of private-key decryption operations performed by one request. The verify_all_recipients option does not reduce this work because the affected loop processes every recipient before consulting that setting, allowing repeated requests to exhaust service CPU without affecting confidentiality or integrity. This issue is fixed in version 1.7.5.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
