Skip to main content

jwcrypto CVE-2026-80179

MEDIUM
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-08-27 redhat
5.9
CVSS 3.1 · Vendor: redhat
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Identify JWE-deserializing endpoint
  2. Delivery
    Craft JWE token with excessive period delimiters
  3. Exploit
    Submit malformed token via HTTP request
  4. Install
    JWE.deserialize() allocates unbounded memory per segment
  5. C2
    Process memory exhausted
  6. Execute
    Service crashes with MemoryError
  7. Impact
    Denial of service achieved

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The target service must explicitly call JWE.deserialize() on attacker-supplied, untrusted JWE token data without prior structural or length validation - this is a code-path-dependent condition, not a default behavior of all jwcrypto deployments. Services that only generate JWE tokens, or that validate JWE tokens from internally trusted sources, are not affected. The CVSS AC:H rating reflects this application-specific prerequisite: the vulnerable code path is only reachable if the service design exposes a JWE deserialization endpoint to external input. No authentication is required from the attacker (PR:N per CVSS), meaning any unauthenticated caller who can reach the endpoint can trigger the flaw. Exploitation does not produce code execution or data leakage - only a service crash. Limiting factors include the AC:H requirement (targeted service must process untrusted JWE), the purely DoS nature of impact, and the likelihood that many jwcrypto deployments do not expose raw JWE deserialization to unauthenticated users.

Impact

The CVSS 3.1 score of 5.9 Medium with vector AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H accurately reflects the constrained real-world risk: while the attack is network-reachable and requires no credentials, the AC:H rating is consistent with the requirement that the target application must specifically deserialize untrusted JWE input - a conditional deployment posture rather than a universal default. No EPSS data was provided in the input, so probabilistic exploitation likelihood cannot be quantified. The vulnerability is not listed in CISA KEV, and no POC is referenced, placing it in the no public exploit confirmed category. Impact is strictly a DoS; there is no confidentiality or integrity risk, which limits blast radius even in worst-case exploitation. The primary real-world risk concentration is in API gateways, identity services, or automation endpoints built on jwcrypto that accept JWE tokens from external, unauthenticated clients - where repeated crafted requests could sustain a service outage. Services that only issue or internally validate JWE tokens are not exposed.

Exploit ScenarioDerived

An unauthenticated attacker sends an HTTP request to a public-facing API endpoint that passes the Authorization header or request body value directly to jwcrypto's JWE.deserialize() - for example, a token introspection or decryption endpoint in an Ansible Automation Platform deployment. The crafted JWE string contains thousands of period characters, causing deserialize() to loop over segments and allocate memory beyond available limits. The Python process terminates with a MemoryError, taking the service offline until restarted, with no code execution or data exfiltration possible. No public exploit code has been identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 28, 2026

Denial of service in jwcrypto's JWE.deserialize() function allows a remote unauthenticated attacker to crash any service that processes untrusted JWE tokens by submitting a malformed compact serialization containing an excessive number of period delimiters, triggering uncontrolled memory allocation and a MemoryError. Affected deployments include Red Hat Ansible Automation Platform 2, RHEL 9 and 10, OpenShift AI (RHOAI), and OpenStack Platform 16.2 as disclosed via Red Hat Bugzilla 2524147 and upstream advisory GHSA-96rv-c4vc-h4f4. No public exploit code or CISA KEV listing exists at time of analysis, and impact is confined to availability with no confidentiality or integrity exposure.

RemediationAI

Consult the upstream GitHub Security Advisory GHSA-96rv-c4vc-h4f4 (https://github.com/latchset/jwcrypto/security/advisories/GHSA-96rv-c4vc-h4f4) and Red Hat's advisory at https://access.redhat.com/security/cve/CVE-2026-80179 for patched jwcrypto package versions; no exact fixed version number is confirmed from the provided input data. Red Hat Ansible Automation Platform 2 and other affected Red Hat products should be updated via standard Red Hat subscription channels once errata are released. As a compensating control prior to patching, applications should validate JWE token structure and enforce a maximum token length or segment count before invoking JWE.deserialize() - for example, rejecting any token with more than five period-delimited segments (the valid JWE compact format has exactly four periods). Rate-limiting or authentication-gating endpoints that accept JWE input from untrusted sources reduces DoS exposure without requiring code changes, though this does not eliminate the underlying flaw. Monitoring memory usage on affected services can provide early warning of exploitation attempts.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

jwcrypto is a Python library implementing the JSON Web Cryptography suite (JWE per RFC 7516, JWS per RFC 7515, JWK per RFC 7517). JWE compact serialization uses period (.) characters as structural delimiters to separate its five Base64URL-encoded components. The root cause is CWE-770 (Allocation of Resources Without Limits or Throttling): the JWE.deserialize() function does not validate or bound the number of period-delimited segments before attempting to parse and allocate memory for them. An attacker who can submit an arbitrarily long or structurally malformed token string can cause the function to attempt allocation proportional to the number of delimiter-separated segments, exhausting process memory. Red Hat distributes jwcrypto as a dependency across multiple enterprise products, identified via CPE cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2 (all versions, multiple platform variants), along with RHEL 9, RHEL 10, OpenShift AI, and OpenStack Platform 16.2 per provided tags.

Know when Red Hat Enterprise Linux 10 gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (redhat) PRIMARY 5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 5.9 MEDIUM

Exploitation requires the application to specifically deserialize untrusted JWE input (AC:H); no credentials needed (PR:N); impact is DoS only with no confidentiality or integrity effect.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE 5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Red Hat 5.9 MEDIUM

Primary rating from Vendor (redhat).

CVSS VectorVendor: redhat

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

DescriptionCVE.org

A flaw was found in jwcrypto. A remote attacker can send a specially crafted JSON Web Encryption (JWE) token containing numerous period delimiters. This malformed token can force the JWE.deserialize() function to allocate excessive memory, leading to a MemoryError. This issue results in a denial of service (DoS) for services that process untrusted JWE values.

Threat Intelligence Overview

EPSS Score
0.3%
Top 84% exploitable
Prevalence
Medium
Python JWE library bundled across several Red Hat enterprise products
Data Quality
5 sources
Confidence: Medium
NVD CVE.org EPSS Vulnrichment Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Affected Products (CPE)CVE.org

cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_ansible_automation_platform_2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_enterprise_linux_10:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_enterprise_linux_9:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_openshift_ai_(rhoai):*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_openshift_ai_(rhoai):*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_openstack_platform_16.2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_openstack_platform_16.2:*:*:*:*:*:*:*:*
cpe:2.3:a:red_hat:red_hat_openstack_platform_16.2:*:*:*:*:*:*:*:*
+ 5 more
CVE-2026-18663 MEDIUM
5.9 Aug 12

Heap corruption via double-free in 389-ds-base's LDAP control parsing allows an unauthenticated remote attacker to crash

CVE-2026-4631 CRITICAL POC
9.8 Apr 07

Remote code execution in Cockpit's web interface allows unauthenticated attackers to execute arbitrary commands on the h

CVE-2026-4480 CRITICAL POC
9.0 May 26

Remote code execution in Samba's printing subsystem allows remote attackers to inject arbitrary shell commands via craft

CVE-2026-101258 HIGH POC
7.8 Oct 06

Ghostscript can execute arbitrary shell commands with the privileges of its process when it renders a crafted PostScript

CVE-2026-18922 CRITICAL
9.8 Sep 07

Authentication bypass in 389 Directory Server (shipped as Red Hat Directory Server 11-13 and within RHEL 6-10) lets remo

CVE-2026-14544 CRITICAL
9.8 Jul 03

Remote code execution and privilege escalation in HPLIP (HP Linux Imaging and Printing) affects the hpcups print filter

CVE-2026-76578 CRITICAL
9.8 Sep 07

Unauthenticated privilege escalation in FreeIPA (Red Hat Identity Management) allows a remote attacker to gain genuine a

CVE-2026-102560 CRITICAL
9.8 Sep 29

A heap buffer overflow exists in libsoup's WebSocket permessage-deflate compression path: when a very large outbound mes

CVE-2026-5121 HIGH
7.5 Mar 30

Remote code execution in libarchive on 32-bit systems allows unauthenticated attackers to execute arbitrary code via spe

CVE-2026-107935 CRITICAL
9.3 Oct 09

Unauthenticated path traversal in gvproxy, the network forwarder shipped in the gvisor-tap-vsock package (used by Podman

CVE-2026-28369 CRITICAL
9.1 Mar 27

HTTP request smuggling in Undertow (the embedded web server underpinning JBoss EAP, Red Hat Data Grid, and Apache Camel

CVE-2026-28368 CRITICAL
9.1 Mar 27

HTTP request smuggling in Red Hat Undertow allows remote unauthenticated attackers to bypass front-end security controls

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Server 16.0 Affected
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.0 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected
openSUSE Leap 16.0 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy