dependabot[bot] opened a new pull request, #470: URL: https://github.com/apache/cassandra-nodejs-driver/pull/470
Bumps [adm-zip](https://github.com/cthackers/adm-zip) from 0.5.10 to 0.6.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/cthackers/adm-zip/releases">adm-zip's releases</a>.</em></p> <blockquote> <h2>v0.6.0</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/cthackers/adm-zip/compare/v0.5.18...v0.6.0">https://github.com/cthackers/adm-zip/compare/v0.5.18...v0.6.0</a></p> <p>This release fixes a security vulnerability (CVE-2026-39244), resolves several long-standing bugs, ships built-in TypeScript types, and includes two behavior changes worth reading before you upgrade.</p> <ul> <li>extractEntryTo(dirEntry, target, maintainEntryPath = false) now preserves subdirectories instead of flattening files into the target folder by basename (which also silently overwrote same-named files). (<a href="https://redirect.github.com/cthackers/adm-zip/issues/306">#306</a>)</li> <li>Extraction no longer fails when the modification time can't be set — utimes is now best-effort. (<a href="https://redirect.github.com/cthackers/adm-zip/issues/379">#379</a>)</li> <li>Minimum Node.js is now 14 (the code already required it; engines was incorrectly >=12).</li> <li>CVE-2026-39244 — a crafted archive declaring a huge uncompressed size could force an unbounded Buffer.alloc and OOM the process; allocation is now bounded by the data actually present. Reported by Daniel Púa (devploit), Anh Hong, and José Antonio Zamudio Amaya. (<a href="https://redirect.github.com/cthackers/adm-zip/issues/568">#568</a>)</li> <li>Hardened entry-name lookup against object injection (<strong>proto</strong> names). Prototype-less table.</li> <li>Data-descriptor regression rejecting valid archives (<a href="https://redirect.github.com/cthackers/adm-zip/issues/548">#548</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/533">#533</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/554">#554</a>)</li> <li>Directory permissions not restored on extract (<a href="https://redirect.github.com/cthackers/adm-zip/issues/530">#530</a>)</li> <li>Infinite recursion on symlink loops in addLocalFolder (<a href="https://redirect.github.com/cthackers/adm-zip/issues/541">#541</a>)</li> <li>Uncaught process crash in writeFileToAsync on write failure (<a href="https://redirect.github.com/cthackers/adm-zip/issues/470">#470</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/459">#459</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/402">#402</a>)</li> <li>Empty name on directory entries (<a href="https://redirect.github.com/cthackers/adm-zip/issues/466">#466</a>)</li> <li>test() always returned false for archives with files</li> <li>~6× faster entry sorting for large archives</li> <li>Built-in TypeScript definitions (types.d.ts) — you can drop <code>@types/adm-zip</code></li> </ul> <h2>v0.5.18</h2> <h2>What's Changed</h2> <ul> <li>Bump js-yaml from 4.1.1 to 4.3.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/cthackers/adm-zip/pull/566">cthackers/adm-zip#566</a></li> <li>Fix corrupted zip when round-tripping entries with a data descriptor (<a href="https://redirect.github.com/cthackers/adm-zip/issues/555">#555</a>) by <a href="https://github.com/JohnJunior"><code>@JohnJunior</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/564">cthackers/adm-zip#564</a></li> <li>prevent crashes when process.versions is an empty object by <a href="https://github.com/matt-fidd"><code>@matt-fidd</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/551">cthackers/adm-zip#551</a></li> <li>support for writing zip64 by <a href="https://github.com/mielverkerken"><code>@mielverkerken</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/562">cthackers/adm-zip#562</a></li> <li>Fix Archive Utility failure on zips with empty directories (<a href="https://redirect.github.com/cthackers/adm-zip/issues/558">#558</a>) by <a href="https://github.com/JohnJunior"><code>@JohnJunior</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/563">cthackers/adm-zip#563</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/JohnJunior"><code>@JohnJunior</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/564">cthackers/adm-zip#564</a></li> <li><a href="https://github.com/matt-fidd"><code>@matt-fidd</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/551">cthackers/adm-zip#551</a></li> <li><a href="https://github.com/mielverkerken"><code>@mielverkerken</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/562">cthackers/adm-zip#562</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/cthackers/adm-zip/compare/v0.5.17...v0.5.18">https://github.com/cthackers/adm-zip/compare/v0.5.17...v0.5.18</a></p> <h2>v0.5.17</h2> <h2>What's Changed</h2> <ul> <li>entryHeader time setter more tolerant by <a href="https://github.com/thomasheritage"><code>@thomasheritage</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/540">cthackers/adm-zip#540</a></li> <li>Add check for local desc flag in crc check by <a href="https://github.com/issacgerges"><code>@issacgerges</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/543">cthackers/adm-zip#543</a></li> <li>Create only if the directory does not exist by <a href="https://github.com/DennisHill"><code>@DennisHill</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/557">cthackers/adm-zip#557</a></li> <li>Fix issue with absolute paths by <a href="https://github.com/kwolfy"><code>@kwolfy</code></a> in <a href="https://redirect.github.com/cthackers/adm-zip/pull/559">cthackers/adm-zip#559</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/thomasheritage"><code>@thomasheritage</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/540">cthackers/adm-zip#540</a></li> <li><a href="https://github.com/issacgerges"><code>@issacgerges</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/543">cthackers/adm-zip#543</a></li> <li><a href="https://github.com/DennisHill"><code>@DennisHill</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/557">cthackers/adm-zip#557</a></li> <li><a href="https://github.com/kwolfy"><code>@kwolfy</code></a> made their first contribution in <a href="https://redirect.github.com/cthackers/adm-zip/pull/559">cthackers/adm-zip#559</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/cthackers/adm-zip/compare/v0.5.16...v0.5.17">https://github.com/cthackers/adm-zip/compare/v0.5.16...v0.5.17</a></p> <h2>v0.5.16</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/cthackers/adm-zip/blob/master/history.md">adm-zip's changelog</a>.</em></p> <blockquote> <h1>0.6.0 / 2026-07-10</h1> <p>Security</p> <ul> <li>Fixed CVE-2026-39244: a crafted archive declaring a huge uncompressed size could force an unbounded <code>Buffer.alloc</code> (memory exhaustion / DoS) before any validation. Allocation is now bounded by the data actually present — STORED output is sized from the real bytes, DEFLATED output is grown by the inflater and capped at the declared size (<a href="https://redirect.github.com/cthackers/adm-zip/issues/568">#568</a>)</li> <li>Hardened the internal entry-name lookup table against object injection: entry names come from untrusted archives, and a name such as <code>__proto__</code> previously resolved to <code>Object.prototype</code>, crashing <code>addFile</code> and hiding the entry from <code>getEntry</code>/<code>readFile</code>. The table is now prototype-less</li> </ul> <p>Bug fixes</p> <ul> <li>Fixed a regression (0.5.15) that rejected valid archives using a data descriptor (general-purpose bit 3). The payload is now validated against the authoritative central-directory CRC instead of requiring/parsing the trailing descriptor (<a href="https://redirect.github.com/cthackers/adm-zip/issues/548">#548</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/533">#533</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/554">#554</a>)</li> <li>Fixed <code>extractAllTo</code>/<code>extractAllToAsync</code> not restoring directory permissions with <code>keepOriginalPermission</code>; directory modes are applied after their contents are written, deepest path first, and no longer lock the extractor out of a restrictive directory (<a href="https://redirect.github.com/cthackers/adm-zip/issues/530">#530</a>)</li> <li>Fixed infinite recursion in <code>addLocalFolder</code> when a folder contains a symlink pointing back to an ancestor (e.g. workspace <code>node_modules</code>); the walk now tracks resolved real paths and skips already-visited directories (<a href="https://redirect.github.com/cthackers/adm-zip/issues/541">#541</a>)</li> <li>Fixed an uncaught exception (<code>ERR_INVALID_ARG_TYPE</code>) that crashed the process when <code>writeFileToAsync</code> could not open the target file (bad permissions, invalid filename, exhausted file descriptors); write failures are now reported through the callback and write errors are no longer silently swallowed (<a href="https://redirect.github.com/cthackers/adm-zip/issues/470">#470</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/459">#459</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/402">#402</a>)</li> <li>Fixed directory entries reporting an empty <code>name</code> (e.g. <code>a/b/c/</code> now returns <code>c</code>) (<a href="https://redirect.github.com/cthackers/adm-zip/issues/466">#466</a>)</li> <li>Fixed <code>extractEntryTo</code> flattening subdirectories when <code>maintainEntryPath</code> is false; the structure below the extracted directory is now preserved instead of collapsing (and overwriting) files by basename (<a href="https://redirect.github.com/cthackers/adm-zip/issues/306">#306</a>)</li> <li>Fixed a failed <code>utimes</code> aborting extraction; setting the modification time is now best-effort and never fails extraction of already-written content (<a href="https://redirect.github.com/cthackers/adm-zip/issues/379">#379</a>)</li> <li>Fixed <code>test()</code> always returning false for any archive containing a file (it indexed the entries array with an entry object instead of reading the entry); it now correctly verifies each entry's CRC</li> </ul> <p>Performance</p> <ul> <li>Faster entry sorting when writing archives with many entries: names are decoded once instead of on every comparison (about 6× faster sort for large archives)</li> </ul> <p>Added</p> <ul> <li>Bundled TypeScript type definitions (<code>types.d.ts</code>), so <code>@types/adm-zip</code> is no longer required</li> </ul> <p>Notes</p> <ul> <li>Behavior change: <code>extractEntryTo(dir, target, /* maintainEntryPath */ false)</code> now preserves subdirectories beneath the extracted directory rather than flattening them</li> <li>Behavior change: extraction no longer fails when the modification time cannot be set</li> </ul> <h1>0.5.4 / 2021-03-08</h1> <ul> <li>Fixed relative paths</li> <li>Added zipcrypto encryption</li> <li>Lower verMade for macOS when generating zip file</li> </ul> <h1>0.5.3 / 2021-02-07</h1> <ul> <li>Fixed filemode when unzipping</li> </ul> <h1>0.5.2 / 2021-01-27</h1> <ul> <li>Fixed path traversal issue (GHSL-2020-198)</li> </ul> <h1>0.5.1 / 2020-11-27</h1> <ul> <li>Incremented version (cthackers)</li> <li>Fixed outFileName (cthackers)</li> </ul> <h1>0.5.0 / 2020-11-19</h1> <ul> <li>Added extra parameter to extractEntryTo so target filename can be renamed (cthackers)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/cthackers/adm-zip/commit/2b4d84087d45344643e0183756e19191d52815cc"><code>2b4d840</code></a> updated minimum node engine version to >= 14</li> <li><a href="https://github.com/cthackers/adm-zip/commit/dc57f0fcc945571052f73f883b42ef1a7237de4e"><code>dc57f0f</code></a> Hardened entry-name lookup, fixed test(), and sped up entry sorting</li> <li><a href="https://github.com/cthackers/adm-zip/commit/f81806adc0352ea02d01152d740706f02d0cc371"><code>f81806a</code></a> Made utimes best-effort so it can't abort extraction (<a href="https://redirect.github.com/cthackers/adm-zip/issues/379">#379</a>)</li> <li><a href="https://github.com/cthackers/adm-zip/commit/ab0432410eaef87a6d1e89efdd7266aa9270641b"><code>ab04324</code></a> Fixed extractEntryTo flattening subdirectories (<a href="https://redirect.github.com/cthackers/adm-zip/issues/306">#306</a>)</li> <li><a href="https://github.com/cthackers/adm-zip/commit/8a5d9bacd5553d7f0172821658e27f4e4e76c6d5"><code>8a5d9ba</code></a> Fixed empty name for directory entries (<a href="https://redirect.github.com/cthackers/adm-zip/issues/466">#466</a>)</li> <li><a href="https://github.com/cthackers/adm-zip/commit/3e727907541ba2b5cabc3fdba60b71134bd85825"><code>3e72790</code></a> Fixed uncaught crash in writeFileToAsync on write failure (<a href="https://redirect.github.com/cthackers/adm-zip/issues/470">#470</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/459">#459</a>, <a href="https://redirect.github.com/cthackers/adm-zip/issues/402">#402</a>)</li> <li><a href="https://github.com/cthackers/adm-zip/commit/651ae4c3497f4ec2609dbfafb731da32dfe5e9ad"><code>651ae4c</code></a> Added typescript types</li> <li><a href="https://github.com/cthackers/adm-zip/commit/e72021dedf1140ec09aa529c703c98e4ac7eb947"><code>e72021d</code></a> Fixed infinite recursion on symlink loops in addLocalFolder (<a href="https://redirect.github.com/cthackers/adm-zip/issues/541">#541</a>)</li> <li><a href="https://github.com/cthackers/adm-zip/commit/8f3176bef3ab5fe89b587e0b8152ae202f28d14a"><code>8f3176b</code></a> Fixed directory permissions on linux</li> <li><a href="https://github.com/cthackers/adm-zip/commit/4d2c8f9652618d1f70265df818f33c3d57dd53b2"><code>4d2c8f9</code></a> Fixed error introduced with zip descriptor checks</li> <li>Additional commits viewable in <a href="https://github.com/cthackers/adm-zip/compare/v0.5.10...v0.6.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/apache/cassandra-nodejs-driver/network/alerts). </details> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
