Skip to main content

msgpack-python EUVDEUVD-2026-40423

| CVE-2026-57585 HIGH
Use After Free (CWE-416)
2026-06-30 security-advisories@github.com
7.5
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

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

  1. Access
    Connect to msgpack-consuming service
  2. Delivery
    Send malformed MessagePack payload
  3. Exploit
    Decode error raised and caught
  4. Execution
    Feed more data to reused Unpacker
  5. Persist
    Out-of-bounds read triggers SEGV
  6. Impact
    Process crash / denial of service

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

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

Exploitation Conditions

The specific precondition is that the application must reuse the same Unpacker object after an unpacking error was raised and caught - i.e., catch-and-continue decoding on a shared or long-lived Unpacker (typical of streaming/persistent-connection designs). The vulnerability is limited to that usage pattern: applications that create a new Unpacker per message, or that abort/discard the Unpacker on any error, are not exposed. The CVSS vector is unauthenticated and needs no user interaction (PR:N/UI:N), but the impact is confined to a crash (A:H only, C:N/I:N), and exploitation depends on reaching code that feeds attacker-controlled bytes into the reused Unpacker. Affected only on msgpack-python versions before 1.2.1.

Impact

The CVSS 3.1 vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yields 7.5 and isolates the impact to availability - no confidentiality or integrity loss - consistent with a crash/DoS rather than RCE. The network vector and lack of required privileges or user interaction make it easy to trigger in principle, but real-world risk is gated by an application-side precondition: the program must reuse the same Unpacker object after catching a decode error, which is a coding pattern rather than a default-on feature, arguably warranting higher attack complexity than AC:L suggests. There is no KEV listing and no POC referenced, and no EPSS value was supplied, so there is no evidence of active or widespread exploitation. Net: a credible, easy-to-trigger DoS for services that reuse Unpackers on long-lived connections, but lower priority than a CVSS-7.5 might imply for deployments that create a fresh Unpacker per message or do not catch-and-continue.

Exploit ScenarioDerived

An attacker connected to a network service that streams MessagePack over a persistent connection sends a deliberately malformed payload to trigger a caught decode error, then sends additional bytes to the same long-lived Unpacker. The subsequent out-of-bounds read crashes the worker process with a SEGV, denying service; repeating this against a shared/reused Unpacker keeps the service down. No public POC is referenced in the available data.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 30, 2026

Denial of service in the msgpack-python serialization library (versions prior to 1.2.1) lets remote attackers crash a process via an out-of-bounds read when an application reuses an Unpacker instance after a previously raised error was caught. Sending malformed MessagePack data that triggers an error, then feeding further data to the same Unpacker, can drive the process to a SEGV. No public exploit has been identified at time of analysis, and EPSS data was not provided, but the CVSS 3.1 score of 7.5 (availability-only) reflects a straightforward, unauthenticated crash condition.

RemediationAI

Upgrade msgpack to the fixed release - Vendor-released patch: 1.2.1 - by pinning msgpack>=1.2.1 in requirements and rebuilding/redeploying, per advisory GHSA-6v7p-g79w-8964 (https://github.com/msgpack/msgpack-python/security/advisories/GHSA-6v7p-g79w-8964). If immediate upgrade is not possible, the targeted workaround is to stop reusing an Unpacker instance after an exception: discard the Unpacker and instantiate a fresh one (or drop/reset the connection) whenever a decode error is caught, which removes the inconsistent-state trigger at the cost of losing any buffered stream continuation. Additionally, validate or size-limit untrusted MessagePack input and isolate decoding in a restartable worker so a SEGV degrades to a recoverable restart rather than a full outage; review the fixing commit 2c56ddb5d0025ed481d962c0f5d62d19dec7476d to confirm coverage of your usage pattern.

Affected VersionsENISA

msgpack-python < 1.2.1

Affected Packages

pypi msgpack fix: 1.2.1
euvd msgpack_python fix: 1.2.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi, euvd

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

Technical ContextAI · show details

msgpack-python is the CPython binding (largely Cython/C) for the MessagePack binary serialization format, widely used to deserialize compact binary payloads in RPC frameworks, caches, message queues, and ML tooling. The defect lives in the Unpacker streaming-decode object: after an exception is raised and caught mid-stream, internal buffer/offset state is left inconsistent, so a subsequent feed/unpack on the same instance reads past valid buffer bounds. NVD classifies this as CWE-416 (Use After Free) and the GitHub tags add Buffer Overflow / Memory Corruption, though the advisory text describes the concrete manifestation as an out-of-bounds read causing a crash rather than confirmed exploitable memory corruption.

Know when Messagepack 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 (github) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 5.9 MEDIUM

Network-reachable and unauthenticated, but exploitation depends on the app reusing an Unpacker after a caught error, so AC:H; impact is crash-only, hence C:N/I:N/A:H.

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 HIGH
Red Hat 7.5 HIGH

Primary rating from Vendor (github).

CVSS VectorVendor: github

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

Lifecycle Timeline

1
Patch available
Jun 30, 2026 - 23:01 EUVD

DescriptionCVE.org

MessagePack is the serializer implementation for Python msgpack.org. Prior to 1.2.1, there is an Out-of-bounds read/crash on Unpacker reuse after a caught error, potentially leading to a DoS attack. If the Unpacker is used repeatedly after an error occurs, the process may crash with a SEGV. This issue has been fixed in version 1.2.1.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 33 pypi packages depend on msgpack (17 direct, 16 indirect)

Ecosystem-wide dependent count for version 1.2.1.

Executive ViewAI

Why It Matters

msgpack-python serialization library (versions prior to 1.2.1) contains a denial-of-service vulnerability allowing remote, unauthenticated attackers to crash application processes by reusing an Unpacker instance after error handling. This directly threatens service availability for any system processing untrusted MessagePack data. Affected organizations should immediately identify scope and deploy compensating controls.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Instantiate new Unpacker instance for each deserialization operation instead of reusing; (2) implement strict input validation before MessagePack parsing; (3) containerize/isolate MessagePack processing to limit crash blast radius; (4) add rate limiting and anomaly detection on parsing endpoints; (5) monitor application logs for SEGV events correlating with MessagePack operations.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
High
extremely popular Python serialization library across RPC, caching, and ML tooling
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC 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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Public Cloud 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 Fixed

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