<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-01T14:58:08.256292+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2026-21452</id>
    <title>CVE-2026-21452 — MessagePack-Java Vulnerable to Remote Denial of Service via Malicious .msgpack Model File Triggering Unbounded EXT Payl…</title>
    <updated>2026-10-01T14:58:08.259768+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> msgpack-java</p>
<p>MessagePack for Java is a serializer implementation for Java. A denial-of-service vulnerability exists in versions prior to 0.9.11 when deserializing .msgpack files containing EXT32 objects with attacker-controlled payload lengths. While MessagePack-Java parses extension headers lazily, it later trusts the declared EXT payload length when materializing the extension data. When ExtensionValue.getData() is invoked, the library attempts to allocate a byte array of the declared length without enforcing any upper bound. A malicious .msgpack file of only a few bytes can therefore trigger unbounded heap allocation, resulting in JVM heap exhaustion, process termination, or service unavailability. This vulnerability is triggered during model loading / deserialization, making it a model format vulnerability suitable for remote exploitation. The vulnerability enables a remote denial-of-service attack against applications that deserialize untrusted .msgpack model files using MessagePack for Java. A specially crafted but syntactically valid .msgpack file containing an EXT32 object with an attacker-controlled, excessively large payload length can trigger unbounded memory allocation during deserialization. When the model file is loaded, the library trusts the declared length metadata and attempts to allocate a byte array of that size, leading to rapid heap exhaustion, excessive garbage collection, or immediate JVM termination with an OutOfMemoryError. The attack requires no malformed bytes…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2026-21452"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-cw39-r4h6-8j3x</id>
    <title>GHSA-cw39-r4h6-8j3x — MessagePack for Java Vulnerable to Remote DoS via Malicious EXT Payload Allocation</title>
    <updated>2026-10-01T14:58:08.259962+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Maven: org.msgpack:msgpack-core</p>
<p>### Summary
Affected Components:
```
org.msgpack.core.MessageUnpacker.readPayload()
org.msgpack.core.MessageUnpacker.unpackValue()
org.msgpack.value.ExtensionValue.getData()
```
A denial-of-service vulnerability exists in MessagePack for Java when deserializing .msgpack files containing EXT32 objects with attacker-controlled payload lengths. While MessagePack-Java parses extension headers lazily, it later trusts the declared EXT payload length when materializing the extension data. When ExtensionValue.getData() is invoked, the library attempts to allocate a byte array of the declared length without enforcing any upper bound. A malicious .msgpack file of only a few bytes can therefore trigger unbounded heap allocation, resulting in JVM heap exhaustion, process termination, or service unavailability. This vulnerability is triggered during model loading / deserialization, making it a model format vulnerability suitable for remote exploitation.</p>
<p>### PoC
```
import msgpack
import struct
import os</p>
<p>OUTPUT_DIR = "bombs"
os.makedirs(OUTPUT_DIR, exist_ok=True)</p>
<p># EXT format: fixext / ext8 / ext16 / ext32
# ext32 allows attacker-controlled length (uint32)</p>
<p>length = 1
step = 10_000_000</p>
<p>while True:
    try:
        # EXT32: 0xC9 | length (4 bytes) | type (1 byte)
        header = b'\xC9' + struct.pack("&gt;I", length) + b'\x01'
        payload = b'A'   # actual data tiny</p>
<p>data = header + payload</p>
<p>fname = f"{OUTPUT_DIR}/ext_length_{length}.msgpack"
        with open(fname,…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-cw39-r4h6-8j3x"/>
  </entry>
</feed>
