<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Wed, 30 Sep 2026 23:04:21 +0000</lastBuildDate>
    <item>
      <title>CVE-2025-6545 — pbkdf2 silently returns predictable uninitialized/zero-filled memory for non-normalized or unimplemented algos supporte…</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2025-6545</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; pbkdf2&lt;/p&gt;
&lt;p&gt;Improper Input Validation vulnerability in pbkdf2 allows Signature Spoofing by Improper Validation. This vulnerability is associated with program files lib/to-buffer.Js.&lt;/p&gt;
&lt;p&gt;This issue affects pbkdf2: from 3.0.10 through 3.1.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; pbkdf2&lt;/p&gt;
&lt;p&gt;Improper Input Validation vulnerability in pbkdf2 allows Signature Spoofing by Improper Validation. This vulnerability is associated with program files lib/to-buffer.Js.&lt;/p&gt;
&lt;p&gt;This issue affects pbkdf2: from 3.0.10 through 3.1.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2025-6545</guid>
    </item>
    <item>
      <title>GHSA-h7cp-r72f-jxh6 — pbkdf2 returns predictable uninitialized/zero-filled memory for non-normalized or unimplemented algos</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-h7cp-r72f-jxh6</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: pbkdf2&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;This affects both:
 1. Unsupported algos (e.g. `sha3-256` / `sha3-512` / `sha512-256`)
 2. Supported but non-normalized algos (e.g. `Sha256` / `Sha512` / `SHA1` / `sha-1` / `sha-256` / `sha-512`)&lt;/p&gt;
&lt;p&gt;All of those work correctly in Node.js, but this polyfill silently returns highly predictable ouput&lt;/p&gt;
&lt;p&gt;Under Node.js (only with `pbkdf2/browser` import, unlikely) / Bun (`pbkdf2` top-level import is affected), the memory is not zero-filled but is uninitialized, as `Buffer.allocUnsafe` is used&lt;/p&gt;
&lt;p&gt;Under browsers, it just returns zero-filled buffers
(Which is also critical, those are completely unacceptable as kdf output and ruin security)&lt;/p&gt;
&lt;p&gt;### Were you affected?&lt;/p&gt;
&lt;p&gt;The full list of arguments that were **not** affected were literal:
 * `&amp;#39;md5&amp;#39;`
 * `&amp;#39;sha1&amp;#39;`
 * `&amp;#39;sha224&amp;#39;`
 * `&amp;#39;sha256&amp;#39;`
 * `&amp;#39;sha384&amp;#39;`
 * `&amp;#39;sha512&amp;#39;`
 * `&amp;#39;rmd160&amp;#39;`
 * `&amp;#39;ripemd160&amp;#39;`&lt;/p&gt;
&lt;p&gt;Any other arguments, e.g. representation variations of the above ones like `&amp;#39;SHA-1&amp;#39;`/`&amp;#39;sha-256&amp;#39;`/`&amp;#39;SHA512&amp;#39;` or  different algos like `&amp;#39;sha3-512&amp;#39;`/`&amp;#39;blake2b512&amp;#39;`, while supported on Node.js `crypto` module, returned predictable output on `pbkdf2` (or `crypto` browser/bundlers polyfill)&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;Beware of packages re-exporting this under a different signature, like (abstract):
```js
const crypto = require(&amp;#39;crypto&amp;#39;)
module.exports.deriveKey = (algo, pass, salt) =&amp;gt; crypto.pbkdf2Sync(pass, salt, 2048, 64, algo)
```&lt;/p&gt;
&lt;p&gt;In this case, the resulting `deriveKey` method is also affected (to the same extent / conditions as listed here).&lt;/p&gt;
&lt;p&gt;### Environments&lt;/p&gt;
&lt;p&gt;T…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: pbkdf2&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;This affects both:
 1. Unsupported algos (e.g. `sha3-256` / `sha3-512` / `sha512-256`)
 2. Supported but non-normalized algos (e.g. `Sha256` / `Sha512` / `SHA1` / `sha-1` / `sha-256` / `sha-512`)&lt;/p&gt;
&lt;p&gt;All of those work correctly in Node.js, but this polyfill silently returns highly predictable ouput&lt;/p&gt;
&lt;p&gt;Under Node.js (only with `pbkdf2/browser` import, unlikely) / Bun (`pbkdf2` top-level import is affected), the memory is not zero-filled but is uninitialized, as `Buffer.allocUnsafe` is used&lt;/p&gt;
&lt;p&gt;Under browsers, it just returns zero-filled buffers
(Which is also critical, those are completely unacceptable as kdf output and ruin security)&lt;/p&gt;
&lt;p&gt;### Were you affected?&lt;/p&gt;
&lt;p&gt;The full list of arguments that were **not** affected were literal:
 * `&amp;#39;md5&amp;#39;`
 * `&amp;#39;sha1&amp;#39;`
 * `&amp;#39;sha224&amp;#39;`
 * `&amp;#39;sha256&amp;#39;`
 * `&amp;#39;sha384&amp;#39;`
 * `&amp;#39;sha512&amp;#39;`
 * `&amp;#39;rmd160&amp;#39;`
 * `&amp;#39;ripemd160&amp;#39;`&lt;/p&gt;
&lt;p&gt;Any other arguments, e.g. representation variations of the above ones like `&amp;#39;SHA-1&amp;#39;`/`&amp;#39;sha-256&amp;#39;`/`&amp;#39;SHA512&amp;#39;` or  different algos like `&amp;#39;sha3-512&amp;#39;`/`&amp;#39;blake2b512&amp;#39;`, while supported on Node.js `crypto` module, returned predictable output on `pbkdf2` (or `crypto` browser/bundlers polyfill)&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;Beware of packages re-exporting this under a different signature, like (abstract):
```js
const crypto = require(&amp;#39;crypto&amp;#39;)
module.exports.deriveKey = (algo, pass, salt) =&amp;gt; crypto.pbkdf2Sync(pass, salt, 2048, 64, algo)
```&lt;/p&gt;
&lt;p&gt;In this case, the resulting `deriveKey` method is also affected (to the same extent / conditions as listed here).&lt;/p&gt;
&lt;p&gt;### Environments&lt;/p&gt;
&lt;p&gt;T…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-h7cp-r72f-jxh6</guid>
    </item>
  </channel>
</rss>
