<?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-03T23:03:01.645793+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/fkie_cve-2026-71498</id>
    <title>fkie_cve-2026-71498</title>
    <updated>2026-10-03T23:03:02.322922+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>node-re2 provides RE2 regular expression bindings for Node.js. Prior to version 1.26.1, passing a Buffer whose final bytes form a truncated (incomplete) multi-byte UTF-8 sequence could cause the native binding to read past the end of the allocated buffer while attempting to decode the final, incomplete code point. This could result in an out-of-bounds read and potential disclosure of adjacent memory contents. This issue is fixed in version 1.26.1.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-71498"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-j4r3-hg7j-8chg</id>
    <title>GHSA-j4r3-hg7j-8chg — node-re2: Out-of-bounds heap read in `replace`/`split` via a `Buffer` ending in a truncated multi-byte UTF-8 character…</title>
    <updated>2026-10-03T23:03:02.323002+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: re2</p>
<p>## Summary</p>
<p>`re2` infers a character's byte length from its UTF-8 lead byte alone, with no bound on the
bytes actually remaining in the input. `Buffer` arguments reach the native layer verbatim —
only strings are re-encoded into well-formed UTF-8 — so a `Buffer` whose last byte is a
multi-byte lead promises continuation bytes that are not there, and the result builders read
up to 3 bytes past the end of the buffer. In `replace()` and `split()` those bytes are copied
into the returned `Buffer`, disclosing adjacent heap memory to JavaScript. The trigger is
deterministic and requires no special heap grooming.</p>
<p>Only `Buffer` input is affected. String input was never at risk: re-encoding guarantees every
multi-byte sequence is complete.</p>
<p>## Root cause</p>
<p>`getUtf8CharSize` maps a lead byte to a length of 1–4 and never sees the input size:</p>
<p>```cpp
// lib/wrapped_re2.h
inline size_t getUtf8CharSize(char ch)
{
      return ((0xE5000000 &gt;&gt; ((ch &gt;&gt; 3) &amp; 0x1E)) &amp; 3) + 1;
}
```</p>
<p>Callers then read that many bytes. In the zero-width branch of `replace()`, the guard proves
only that at least *one* byte remains:</p>
<p>```cpp
// lib/replace.cc
else if ((size_t)offset &lt; size)
{
      auto sym_size = getUtf8CharSize(data[offset]);   // may claim up to 4 bytes
      result.append(data + offset, sym_size);          // reads data[offset .. offset + 3]
      byteIndex = offset + sym_size;
}
```</p>
<p>`offset &lt; size` permits `offset == size - 1`, so a lead byte of `0xF0` makes `append` read
`data[size]`, `data[…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-j4r3-hg7j-8chg"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-71498</id>
    <title>UBUNTU-CVE-2026-71498</title>
    <updated>2026-10-03T23:03:02.323102+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Ubuntu:20.04:LTS: node-re2, Ubuntu:22.04:LTS: node-re2, Ubuntu:24.04:LTS: node-re2, Ubuntu:26.04:LTS: node-re2</p>
<p>node-re2 provides RE2 regular expression bindings for Node.js. Prior to version 1.26.1, passing a Buffer whose final bytes form a truncated (incomplete) multi-byte UTF-8 sequence could cause the native binding to read past the end of the allocated buffer while attempting to decode the final, incomplete code point. This could result in an out-of-bounds read and potential disclosure of adjacent memory contents. This issue is fixed in version 1.26.1.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-71498"/>
  </entry>
</feed>
