Update dependency zod to v4.6.6 [SECURITY] #2

Closed
Renovate wants to merge 1 commit from renovate/npm-zod-vulnerability into main
Collaborator

This PR contains the following updates:

Package Change Age Confidence
zod (source) 4.6.2 → 4.6.6 age confidence

Zod can exhaust memory while validating oversized constrained collections

CVE-2023-54404 / GHSA-mrhx-c7xc-m3w5

More information

Details

Zod schema-validation library through 4.6.5 contains an uncontrolled resource consumption vulnerability that allows attackers to exhaust memory by submitting a large array to an application using an array schema without a length constraint. Attackers can exploit the handleArrayResult parse logic in $ZodArray, which accumulates every validation issue for each failing element with no cap or early termination, causing the process to allocate excessive issue objects and crash due to out-of-memory conditions.

Severity

  • CVSS Score: 8.2 / 10 (High)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Release Notes

colinhacks/zod (zod)

v4.6.6

Compare Source

Six malicious commits pushed to main on September 21 with a compromised git credential were reverted the same day in #​6620 and have since been removed from the history of main. None were ever published to npm. The npm provenance for 4.6.6 names 284243f, the pre-rewrite copy of 9c21983 with identical contents.

Commits:

  • 0cd3af5 docs: load the en locale directly in Zod Mini
  • 9d5e60f docs: import locales from zod/locales, not z.locales
  • 34a626f docs: tighten the z.locales tree-shaking note
  • 74304ce release: stage npm versions instead of publishing them (#​6622)
  • b2ef983 docs: add Code for Japan to bronze sponsors
  • 8fb2faf docs: crop the Code for Japan logo and list it first in bronze
  • bacad51 docs: square the Code for Japan logo to match the other bronze tiles
  • c42596b release: hold the run on the release-approval environment until the staged versions are approved (#​6638)
  • a2ba4a6 fix(types): declare record output and input as members, not base type arguments (#​6645)
  • a0ebf97 fix(v4): check array, set and map size bounds before parsing elements (#​6652)
  • 529f78d 4.6.6
  • 9c21983 ci: stage at verbose so a failed OIDC token exchange says why

v4.6.5

Compare Source

Commits:

  • d2b135c docs: add the 4.6.x patch highlights to the 4.6 post
  • f1448f7 docs: fold the 4.6.x patch highlights into the 4.6 post's own sections
  • de65a5c docs: lead the properties section with the check and add a Zod Mini tab (#​6598)
  • 56222cd feat(instanceof): key the .properties() shape off the instance type (#​6600)
  • ca0229a Revert "feat: add z.currencyCode() over a vendored ISO 4217 list, refreshed weekly by CI (#​6595)"
  • cc4cd4e Revert "Revert "feat: add z.currencyCode() over a vendored ISO 4217 list, refreshed weekly by CI (#​6595)""
  • 0f3f5ee 4.6.5
  • 59bbc03 chore: re-pin the integration peers to the workspace zod after the 4.6.5 bump

v4.6.4

Compare Source

A patch on top of 4.6.3.

  • d6bc1e30 feat: add z.currencyCode() over a vendored ISO 4217 list, refreshed weekly by CI (#​6595)
  • ad32d751 perf: z.url() rejects an invalid URL with URL.canParse() instead of a throwing constructor, about 50x faster; fewer allocations on the validation path (#​6588)
  • 2bb08717 chore: re-pin the integration peers to the workspace zod after the 4.6.4 bump
  • f6e1701a chore(deps): bump next to 15.5.25 and vite to 7.3.6 (#​6153)

v4.6.3

Compare Source

A patch on top of 4.6.2.

  • 413cce9a fix(v4): make z.properties() a check again (#​6594) — removes the standalone z.properties() schema from 4.6.0; z.instanceof().properties() and .check(...z.properties()) are unchanged
  • 75d63ee1 docs: show only the .properties() method form in the 4.6 post
  • 46da9572 docs: match the error-message examples to what the parsers emit

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [zod](https://zod.dev) ([source](https://github.com/colinhacks/zod)) | [`4.6.2` → `4.6.6`](https://renovatebot.com/diffs/npm/zod/4.6.2/4.6.6) | ![age](https://developer.mend.io/api/mc/badges/age/npm/zod/4.6.6?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/zod/4.6.2/4.6.6?slim=true) | --- ### Zod can exhaust memory while validating oversized constrained collections [CVE-2023-54404](https://nvd.nist.gov/vuln/detail/CVE-2023-54404) / [GHSA-mrhx-c7xc-m3w5](https://github.com/advisories/GHSA-mrhx-c7xc-m3w5) <details> <summary>More information</summary> #### Details Zod schema-validation library through 4.6.5 contains an uncontrolled resource consumption vulnerability that allows attackers to exhaust memory by submitting a large array to an application using an array schema without a length constraint. Attackers can exploit the handleArrayResult parse logic in $ZodArray, which accumulates every validation issue for each failing element with no cap or early termination, causing the process to allocate excessive issue objects and crash due to out-of-memory conditions. #### Severity - CVSS Score: 8.2 / 10 (High) - Vector String: `CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N` #### References - [https://nvd.nist.gov/vuln/detail/CVE-2023-54404](https://nvd.nist.gov/vuln/detail/CVE-2023-54404) - [https://github.com/colinhacks/zod/issues/1872](https://github.com/colinhacks/zod/issues/1872) - [https://github.com/colinhacks/zod/pull/6475](https://github.com/colinhacks/zod/pull/6475) - [https://github.com/colinhacks/zod/pull/6652](https://github.com/colinhacks/zod/pull/6652) - [https://github.com/colinhacks/zod/commit/a0ebf970f2d752e5f58527cd2942ff48be4f46bd](https://github.com/colinhacks/zod/commit/a0ebf970f2d752e5f58527cd2942ff48be4f46bd) - [https://github.com/colinhacks/zod](https://github.com/colinhacks/zod) - [https://www.vulncheck.com/advisories/zod-uncontrolled-resource-consumption-via-array-validation](https://www.vulncheck.com/advisories/zod-uncontrolled-resource-consumption-via-array-validation) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-mrhx-c7xc-m3w5) and the [GitHub Advisory Database](https://github.com/github/advisory-database) ([CC-BY 4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Release Notes <details> <summary>colinhacks/zod (zod)</summary> ### [`v4.6.6`](https://github.com/colinhacks/zod/releases/tag/v4.6.6) [Compare Source](https://github.com/colinhacks/zod/compare/v4.6.5...v4.6.6) > Six malicious commits pushed to `main` on September 21 with a compromised git credential were reverted the same day in [#&#8203;6620](https://github.com/colinhacks/zod/issues/6620) and have since been removed from the history of `main`. None were ever published to npm. The npm provenance for 4.6.6 names [`284243f`](https://github.com/colinhacks/zod/commit/284243fb), the pre-rewrite copy of [`9c21983`](https://github.com/colinhacks/zod/commit/9c219833) with identical contents. #### Commits: - [`0cd3af5`](https://github.com/colinhacks/zod/commit/0cd3af5e9f50ad11bbcd4407a46a21b8848ba574) docs: load the en locale directly in Zod Mini - [`9d5e60f`](https://github.com/colinhacks/zod/commit/9d5e60f162997b764b40d45aa02481888db50dea) docs: import locales from zod/locales, not z.locales - [`34a626f`](https://github.com/colinhacks/zod/commit/34a626f307871ecbb0123947559328dc52ed5e3e) docs: tighten the z.locales tree-shaking note - [`74304ce`](https://github.com/colinhacks/zod/commit/74304ce5b5796b5edb9a88ceb8e170b6ea3e82df) release: stage npm versions instead of publishing them ([#&#8203;6622](https://github.com/colinhacks/zod/issues/6622)) - [`b2ef983`](https://github.com/colinhacks/zod/commit/b2ef983e0711ff6517d6020b021071e2e5653efa) docs: add Code for Japan to bronze sponsors - [`8fb2faf`](https://github.com/colinhacks/zod/commit/8fb2faf0584828a6a027d8279db36f6f52784462) docs: crop the Code for Japan logo and list it first in bronze - [`bacad51`](https://github.com/colinhacks/zod/commit/bacad518c41610d654658172d325874bf0ee6290) docs: square the Code for Japan logo to match the other bronze tiles - [`c42596b`](https://github.com/colinhacks/zod/commit/c42596bd1c87e941d7241d10e012c5c196adcc10) release: hold the run on the release-approval environment until the staged versions are approved ([#&#8203;6638](https://github.com/colinhacks/zod/issues/6638)) - [`a2ba4a6`](https://github.com/colinhacks/zod/commit/a2ba4a67986a3e6b2b131be30084a2f460d9ea67) fix(types): declare record output and input as members, not base type arguments ([#&#8203;6645](https://github.com/colinhacks/zod/issues/6645)) - [`a0ebf97`](https://github.com/colinhacks/zod/commit/a0ebf970f2d752e5f58527cd2942ff48be4f46bd) fix(v4): check array, set and map size bounds before parsing elements ([#&#8203;6652](https://github.com/colinhacks/zod/issues/6652)) - [`529f78d`](https://github.com/colinhacks/zod/commit/529f78dd9431b07f49647fee3aa0819b3f8b66b7) 4.6.6 - [`9c21983`](https://github.com/colinhacks/zod/commit/9c219833c3a3764fa1f1ea9c5ecec8254a63c0b1) ci: stage at verbose so a failed OIDC token exchange says why ### [`v4.6.5`](https://github.com/colinhacks/zod/releases/tag/v4.6.5) [Compare Source](https://github.com/colinhacks/zod/compare/v4.6.4...v4.6.5) #### Commits: - [`d2b135c`](https://github.com/colinhacks/zod/commit/d2b135cfb7a3582b9eb515756b9166bcb9521f4a) docs: add the 4.6.x patch highlights to the 4.6 post - [`f1448f7`](https://github.com/colinhacks/zod/commit/f1448f7cee00df9fe1e9ad84a000aa1828cc8bc1) docs: fold the 4.6.x patch highlights into the 4.6 post's own sections - [`de65a5c`](https://github.com/colinhacks/zod/commit/de65a5cb39ed22a507fac935788f718fa88d104f) docs: lead the properties section with the check and add a Zod Mini tab ([#&#8203;6598](https://github.com/colinhacks/zod/issues/6598)) - [`56222cd`](https://github.com/colinhacks/zod/commit/56222cd1532c07bcb91b67df529cab4c0a215330) feat(instanceof): key the .properties() shape off the instance type ([#&#8203;6600](https://github.com/colinhacks/zod/issues/6600)) - [`ca0229a`](https://github.com/colinhacks/zod/commit/ca0229a404818290e6cdcfefcd7eb2d04bcbb543) Revert "feat: add z.currencyCode() over a vendored ISO 4217 list, refreshed weekly by CI ([#&#8203;6595](https://github.com/colinhacks/zod/issues/6595))" - [`cc4cd4e`](https://github.com/colinhacks/zod/commit/cc4cd4ee9c52fcaa10964e48cc144541e41a5ed9) Revert "Revert "feat: add z.currencyCode() over a vendored ISO 4217 list, refreshed weekly by CI ([#&#8203;6595](https://github.com/colinhacks/zod/issues/6595))"" - [`0f3f5ee`](https://github.com/colinhacks/zod/commit/0f3f5ee3ca56c7574bf849e54f79e9a6e02562ee) 4.6.5 - [`59bbc03`](https://github.com/colinhacks/zod/commit/59bbc03e10c636b9eb3c393dfeb552819774ec21) chore: re-pin the integration peers to the workspace zod after the 4.6.5 bump ### [`v4.6.4`](https://github.com/colinhacks/zod/releases/tag/v4.6.4) [Compare Source](https://github.com/colinhacks/zod/compare/v4.6.3...v4.6.4) A patch on top of [4.6.3](https://github.com/colinhacks/zod/releases/tag/v4.6.3). - [`d6bc1e30`](https://github.com/colinhacks/zod/commit/d6bc1e30) feat: add `z.currencyCode()` over a vendored ISO 4217 list, refreshed weekly by CI ([#&#8203;6595](https://github.com/colinhacks/zod/pull/6595)) - [`ad32d751`](https://github.com/colinhacks/zod/commit/ad32d751) perf: `z.url()` rejects an invalid URL with `URL.canParse()` instead of a throwing constructor, about 50x faster; fewer allocations on the validation path ([#&#8203;6588](https://github.com/colinhacks/zod/pull/6588)) - [`2bb08717`](https://github.com/colinhacks/zod/commit/2bb08717) chore: re-pin the integration peers to the workspace zod after the 4.6.4 bump - [`f6e1701a`](https://github.com/colinhacks/zod/commit/f6e1701a) chore(deps): bump next to 15.5.25 and vite to 7.3.6 ([#&#8203;6153](https://github.com/colinhacks/zod/pull/6153)) ### [`v4.6.3`](https://github.com/colinhacks/zod/releases/tag/v4.6.3) [Compare Source](https://github.com/colinhacks/zod/compare/v4.6.2...v4.6.3) A patch on top of [4.6.2](https://github.com/colinhacks/zod/releases/tag/v4.6.2). - [`413cce9a`](https://github.com/colinhacks/zod/commit/413cce9a) fix(v4): make z.properties() a check again ([#&#8203;6594](https://github.com/colinhacks/zod/pull/6594)) — removes the standalone `z.properties()` schema from 4.6.0; `z.instanceof().properties()` and `.check(...z.properties())` are unchanged - [`75d63ee1`](https://github.com/colinhacks/zod/commit/75d63ee1) docs: show only the `.properties()` method form in the 4.6 post - [`46da9572`](https://github.com/colinhacks/zod/commit/46da9572) docs: match the error-message examples to what the parsers emit </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xOTcuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE5Ny4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Renovate scheduled this pull request to auto merge when all checks succeed 2026-10-29 16:03:30 -04:00
Owner

Superceeded by a42018c1a2

Superceeded by a42018c1a2929ac589f10b457a5d7fd59bd4e482
lillith closed this pull request 2026-10-29 16:21:20 -04:00

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
services/authentik2discord!2
No description provided.