<?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-06T12:48:37.559379+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/ghsa-2m67-wjpj-xhg9</id>
    <title>GHSA-2m67-wjpj-xhg9 — Jackson Core: Document length constraint bypass in blocking, async, and DataInput parsers</title>
    <updated>2026-10-06T12:48:37.560629+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Maven: tools.jackson.core:jackson-core</p>
<p>## Summary</p>
<p>Jackson Core 3.x does not consistently enforce `StreamReadConstraints.maxDocumentLength`. Oversized JSON documents can be accepted without a `StreamConstraintsException` in multiple parser entry points, which allows configured size limits to be bypassed and weakens denial-of-service protections.</p>
<p>## Details</p>
<p>Three code paths where `maxDocumentLength` is not fully enforced:</p>
<p>### 1. Blocking parsers skip validation of the final in-memory buffer</p>
<p>Blocking parsers validate only previously processed buffers, not the final in-memory buffer:</p>
<p>- `ReaderBasedJsonParser.java:255`
- `UTF8StreamJsonParser.java:208`</p>
<p>Relevant code:</p>
<p>```java
_currInputProcessed += bufSize;
_streamReadConstraints.validateDocumentLength(_currInputProcessed);
```</p>
<p>This means the check occurs only when a completed buffer is rolled over. If an oversized document is fully contained in the final buffer, parsing can complete without any document-length exception.</p>
<p>### 2. Async parsers skip validation of the final chunk on end-of-input</p>
<p>Async parsers validate previously processed chunks, but do not validate the final chunk on end-of-input:</p>
<p>- `NonBlockingByteArrayJsonParser.java:49`
- `NonBlockingByteBufferJsonParser.java:57`
- `NonBlockingUtf8JsonParserBase.java:75`</p>
<p>Relevant code:</p>
<p>```java
_currInputProcessed += _origBufferLen;
_streamReadConstraints.validateDocumentLength(_currInputProcessed);</p>
<p>public void endOfInput() {
    _endOfInput = true;
}
```</p>
<p>`endOfInput()` marks EOF but does not perform a…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-2m67-wjpj-xhg9"/>
  </entry>
</feed>
