chore(deps): update dependency hono to v4.12.34 [security] #43

Open
renovate-bot wants to merge 1 commit from renovate/npm-hono-vulnerability into main
Collaborator

This PR contains the following updates:

Package Change Age Confidence
hono (source) 4.12.314.12.34 age confidence
hono (source) 4.12.274.12.34 age confidence

⚠️ Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Hono: ReDoS in CORS middleware via Access-Control-Request-Headers

CVE-2026-69207 / GHSA-8j4g-w8fx-2239

More information

Details

Summary

The built-in CORS middleware (hono/cors) parses the attacker-controlled Access-Control-Request-Headers request header during a preflight (OPTIONS) request using a regular expression whose running time is quadratic in the input length. A single request carrying a long run of whitespace can consume seconds of CPU, and repeated requests can render the service unresponsive. This parsing runs under the default configuration.

Details

On a CORS preflight, when allowHeaders is not configured - the default - the middleware reflects and parses the Access-Control-Request-Headers value. The parser used a whitespace-tolerant regular expression whose backtracking makes the work grow quadratically (O(n²)) with the length of the value when it contains a long whitespace sequence without a delimiter.

Because the header value is bounded only by the deployment's maximum HTTP header size, a single preflight can block request processing for a noticeable amount of time; on runtimes that share one execution thread across requests, this stalls concurrent requests as well. No authentication, special origin, or user interaction is required.

This issue arises for any application using cors() with the default (or an empty) allowHeaders. Applications that set a non-empty allowHeaders do not reach the affected path.

Impact

An unauthenticated attacker can send preflight requests that each consume disproportionate CPU relative to their size, degrading or denying service. This is a denial-of-service issue only; it does not expose or modify data.

Severity

  • CVSS Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

References

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


Release Notes

honojs/hono (hono)

v4.12.34

Compare Source

v4.12.33

Compare Source

v4.12.32

Compare Source


Configuration

📅 Schedule: (in timezone Europe/Berlin)

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

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


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

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [hono](https://hono.dev) ([source](https://github.com/honojs/hono)) | [`4.12.31` → `4.12.34`](https://renovatebot.com/diffs/npm/hono/4.12.31/4.12.34) | ![age](https://developer.mend.io/api/mc/badges/age/npm/hono/4.12.34?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/hono/4.12.31/4.12.34?slim=true) | | [hono](https://hono.dev) ([source](https://github.com/honojs/hono)) | [`4.12.27` → `4.12.34`](https://renovatebot.com/diffs/npm/hono/4.12.27/4.12.34) | ![age](https://developer.mend.io/api/mc/badges/age/npm/hono/4.12.34?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/hono/4.12.27/4.12.34?slim=true) | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/20) for more information. --- ### Hono: ReDoS in CORS middleware via Access-Control-Request-Headers [CVE-2026-69207](https://nvd.nist.gov/vuln/detail/CVE-2026-69207) / [GHSA-8j4g-w8fx-2239](https://github.com/advisories/GHSA-8j4g-w8fx-2239) <details> <summary>More information</summary> #### Details ##### Summary The built-in CORS middleware (`hono/cors`) parses the attacker-controlled `Access-Control-Request-Headers` request header during a preflight (`OPTIONS`) request using a regular expression whose running time is quadratic in the input length. A single request carrying a long run of whitespace can consume seconds of CPU, and repeated requests can render the service unresponsive. This parsing runs under the default configuration. ##### Details On a CORS preflight, when `allowHeaders` is not configured - the default - the middleware reflects and parses the `Access-Control-Request-Headers` value. The parser used a whitespace-tolerant regular expression whose backtracking makes the work grow quadratically (O(n²)) with the length of the value when it contains a long whitespace sequence without a delimiter. Because the header value is bounded only by the deployment's maximum HTTP header size, a single preflight can block request processing for a noticeable amount of time; on runtimes that share one execution thread across requests, this stalls concurrent requests as well. No authentication, special origin, or user interaction is required. This issue arises for any application using `cors()` with the default (or an empty) `allowHeaders`. Applications that set a non-empty `allowHeaders` do not reach the affected path. ##### Impact An unauthenticated attacker can send preflight requests that each consume disproportionate CPU relative to their size, degrading or denying service. This is a denial-of-service issue only; it does not expose or modify data. #### Severity - CVSS Score: 5.3 / 10 (Medium) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L` #### References - [https://github.com/honojs/hono/security/advisories/GHSA-8j4g-w8fx-2239](https://github.com/honojs/hono/security/advisories/GHSA-8j4g-w8fx-2239) - [https://github.com/honojs/hono/commit/93fc250d8b4df58ea542cb945171de8013d5e6d5](https://github.com/honojs/hono/commit/93fc250d8b4df58ea542cb945171de8013d5e6d5) - [https://github.com/honojs/hono](https://github.com/honojs/hono) - [https://github.com/honojs/hono/releases/tag/v4.12.34](https://github.com/honojs/hono/releases/tag/v4.12.34) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-8j4g-w8fx-2239) 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>honojs/hono (hono)</summary> ### [`v4.12.34`](https://github.com/honojs/hono/compare/51db3131d5e97076327edaa0afdb60ebb77c264f...734755ace341607628219ea1dd8ca17f01bf1a5c) [Compare Source](https://github.com/honojs/hono/compare/51db3131d5e97076327edaa0afdb60ebb77c264f...734755ace341607628219ea1dd8ca17f01bf1a5c) ### [`v4.12.33`](https://github.com/honojs/hono/compare/26d8e42bfff7eb78fc323a01e1d02d63b9dbcc72...51db3131d5e97076327edaa0afdb60ebb77c264f) [Compare Source](https://github.com/honojs/hono/compare/26d8e42bfff7eb78fc323a01e1d02d63b9dbcc72...51db3131d5e97076327edaa0afdb60ebb77c264f) ### [`v4.12.32`](https://github.com/honojs/hono/compare/cadff88bba34153646c9b35f24d7cc0cb61be913...26d8e42bfff7eb78fc323a01e1d02d63b9dbcc72) [Compare Source](https://github.com/honojs/hono/compare/cadff88bba34153646c9b35f24d7cc0cb61be913...26d8e42bfff7eb78fc323a01e1d02d63b9dbcc72) </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNzkuMSIsInVwZGF0ZWRJblZlciI6IjQzLjI3OS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
Author
Collaborator

⚠️ Artifact update problem

Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: backend/media_service/pnpm-lock.yaml
undefined
File name: backend/image_processing_service/pnpm-lock.yaml
undefined
### ⚠️ Artifact update problem Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: backend/media_service/pnpm-lock.yaml ``` undefined ``` ##### File name: backend/image_processing_service/pnpm-lock.yaml ``` undefined ```
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/npm-hono-vulnerability:renovate/npm-hono-vulnerability
git switch renovate/npm-hono-vulnerability

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/npm-hono-vulnerability
git switch renovate/npm-hono-vulnerability
git rebase main
git switch main
git merge --ff-only renovate/npm-hono-vulnerability
git switch renovate/npm-hono-vulnerability
git rebase main
git switch main
git merge --no-ff renovate/npm-hono-vulnerability
git switch main
git merge --squash renovate/npm-hono-vulnerability
git switch main
git merge --ff-only renovate/npm-hono-vulnerability
git switch main
git merge renovate/npm-hono-vulnerability
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
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
beasty/beastypage!43
No description provided.