<?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://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-03T23:56:31.329107+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" 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://cve.radiocsirt.org/vuln/cve-2026-54911</id>
    <title>CVE-2026-54911 — UltraJSON: Malformed/Truncated UTF-8 Accepted and Silently Rewritten in ujson.dumps()</title>
    <updated>2026-10-03T23:56:31.331211+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> ultrajson</p>
<p>UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. Prior to 5.13.0, ujson.dumps() (or ujson.dump() or ujson.encode()) have a reject_bytes=False option. When set, they may accept malformed or truncated UTF-8 byte sequences, silently rewriting them into different Unicode characters instead of rejecting them. This leads to input validation bypass and data integrity issues. This vulnerability is fixed in 5.13.0.</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/cve-2026-54911"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-3j69-69wj-xqx2</id>
    <title>GHSA-3j69-69wj-xqx2 — UltraJSON: Malformed/Truncated UTF-8 Accepted and Silently Rewritten in ujson.dumps()</title>
    <updated>2026-10-03T23:56:31.331283+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: ujson</p>
<p>### Summary
`ujson.dumps()` (or `ujson.dump()` or `ujson.encode()`) have a `reject_bytes=False` option. When set, they may accept malformed or truncated UTF-8 byte sequences, silently rewriting them into different Unicode characters instead of rejecting them. This leads to input validation bypass and data integrity issues.</p>
<p>### Details</p>
<p>The expected behavior is that for `x` being any bytes string, `x == ujson.loads(ujson.dumps(x, reject_bytes=False)).encode(errors="surrogatepass")` should always either be true or `ujson.dumps()` will throw an exception. In reality, some strings which should've been errors are silently rewritten as other strings:</p>
<p>* Invalid continuation bytes are replaced with valid ones: `b'\xcf\x13'` -&gt; `b'\xcf\x93'`
* Unterminated sequence completes the sequence: `b'\xc3'` -&gt; `b'\xc3\x80'`
* ... or leads to reading past the end of string: `b'\xf0\x90\x94'` -&gt; `b"\xf0\x90\x94\x80inxcontrib'"`</p>
<p>### Impact</p>
<p>An application relying on reject_bytes=False for UTF-8 handling may experience:</p>
<p>- Data integrity issues
- Experience validation bypass if said validation occurs before serialisation</p>
<p>### Remediation</p>
<p>The missing/broken UTF-8 validation checks were added/fixed in https://github.com/ultrajson/ultrajson/commit/169eaf36b1116fece5034ee79a7a0ef3f6deedcf. We recommend upgrading to [UltraJSON 5.13.0](https://github.com/ultrajson/ultrajson/releases/tag/5.13.0).</p>
<p>### Workarounds</p>
<p>Decoding bytes to strings in Python before passing them to `ujson.dumps()` avoids this…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-3j69-69wj-xqx2"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/pysec-2026-2294</id>
    <title>PYSEC-2026-2294</title>
    <updated>2026-10-03T23:56:31.331329+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: ujson</p>
<p>UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. Prior to 5.13.0, ujson.dumps() (or ujson.dump() or ujson.encode()) have a reject_bytes=False option. When set, they may accept malformed or truncated UTF-8 byte sequences, silently rewriting them into different Unicode characters instead of rejecting them. This leads to input validation bypass and data integrity issues. This vulnerability is fixed in 5.13.0.</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/pysec-2026-2294"/>
  </entry>
</feed>
