Skip to content

fix(security): hono 4.13.11 -> 4.13.16 (CVE-2026-126355) +11 more - #524

Open
leoisadev1 wants to merge 2 commits into
mainfrom
security/hono-2026-11-13
Open

leoisadev1 wants to merge 2 commits into
mainfrom
security/hono-2026-11-13

Conversation

@leoisadev1

@leoisadev1 leoisadev1 commented Nov 13, 2026 •

Copy link
Copy Markdown
Member

Summary

The root lockfile resolved hono 4.13.11, @hono/node-server 2.1.3 and basic-ftp 6.2.1, which are affected by nine advisories published on Nov 12. All three are transitive (under the MCP SDK packages, @mastra/* and get-uri) and were already held by root overrides in pnpm-workspace.yaml. This PR raises those three overrides to the lowest fixed releases, bounds them on both sides, and regenerates pnpm-lock.yaml. A second commit covers the advisories published on Nov 13 and 14: it moves the marketing site's astro from 7.3.3 to 7.4.7 directly, and pins @opentelemetry/instrumentation-http (under @daytona/sdk) to 0.222.0 with a new bounded override.

Why this way: a plain lockfile refresh can't move these packages because the existing <4.13.11, <2.1.3 and <6.2.1 overrides pin them. Raising the overrides the repo already uses keeps one source of truth, and it doesn't add a second override next to the first.

Door: two-way · Risk: low (composes root dependency overrides) · Cleanup: none

 # pnpm-workspace.yaml overrides
-"@hono/node-server@<2.1.3": 2.1.3
+"@hono/node-server@>=1.0.0 <2.1.6": 2.1.6
-"basic-ftp@<6.2.1": 6.2.1
+"basic-ftp@>=5.0.0 <6.2.4": 6.2.4
-"hono@<4.13.11": 4.13.11
+"hono@>=4.0.0 <4.13.16": 4.13.16
+"@opentelemetry/instrumentation-http@>=0.204.0 <0.222.0": 0.222.0
 # apps/marketing/package.json
-"astro": "^7.3.3"
+"astro": "^7.4.7"
Package Old New Advisories (CVSS) Affected range
hono 4.13.11 4.13.16 CVE-2026-126355 (5.3), CVE-2026-126356 (5.3), CVE-2026-126357 (5.3), CVE-2026-126358 (5.3), CVE-2026-126359 (3.4) < 4.13.16
@hono/node-server 2.1.3 2.1.6 CVE-2026-126210 (5.3), CVE-2026-126343 (5.3) >= 2.0.0 < 2.1.6 (126210 also < 1.19.18)
astro 7.3.3 7.4.7 CVE-2026-126364 (6.3), CVE-2026-126361 (2.3) >= 5.14.3 <= 7.4.6; <= 7.4.4
@opentelemetry/instrumentation-http 0.221.0 0.222.0 CVE-2026-128080 (5.8) >= 0.204.0 < 0.222.0
basic-ftp 6.2.1 6.2.4 CVE-2026-126346 (5.9), CVE-2026-126345 (5.3) <= 6.2.2 and <= 6.2.3 (fixed in 6.2.3 and 6.2.4)

I checked each fixed version on cve.now and in its GHSA. None is in KEV, and no public exploit is tracked.

Files changed: pnpm-workspace.yaml (three overrides), pnpm-lock.yaml, and .changeset/hono-node-server-basic-ftp-advisories.md (akeru-bot patch, because CI requires a changeset decision). The lower bounds keep the earlier behavior: get-uri asks for basic-ftp ^5.0.2 and @modelcontextprotocol/node asks for @hono/node-server ^1.19.9, and both were already forced onto the newer major before this PR. basic-ftp has no fixed 5.x release.

@daytona/sdk 0.207.0 asks for instrumentation-http ^0.221.0, which on a 0.x line means below 0.222.0, so only an override can reach the fix. 0.222.0 brings its own exact @opentelemetry/core 2.11.0 and @opentelemetry/instrumentation 0.222.0. Its only peer is @opentelemetry/api ^1.3.0, so the rest of Daytona's OpenTelemetry stack (sdk-node 0.221.0, core 2.10.0) stays where it is. The astro move also pulls in astro 7.4.7's own dependency ranges: rolldown 1.3.2, the 0.5.3 compiler bindings and shiki 4.6.0. That moves @shikijs/themes from 4.5.0 to 4.6.0 for @pierre/diffs. The akeru-bot app doesn't use @astrojs/node, so CVE-2026-126364's adapter path doesn't apply here.

Evidence

  • Before: on main, hono 4.13.11 lets csrf() accept a cross-origin POST with Content-Type: text/ping (CVE-2026-126355): HTTP 200.
    After: the same request against the installed hono 4.13.16 returns HTTP 403.
  • pnpm-lock.yaml now holds only hono 4.13.16, @hono/node-server 2.1.6, basic-ftp 6.2.4, astro 7.4.7 and instrumentation-http 0.222.0, with no older copy. The only other lockfile change is a refreshed deprecation message on two @smithy/core entries, which is registry metadata only.
  • I ran every CI step locally (pnpm 11.10.0, Node 24.22.1) on this branch and on main, with the same results. The branch run was repeated on 11-14 at the new head:
Step main this branch
install --frozen-lockfile, public-dependency check, changeset status pass pass
plugin catalog validation and tests pass pass
lint, knip, fmt:check, typecheck pass pass
build:desktop, build:marketing, release:smoke pass pass
package tests pass pass
server suite 4,419 passed, 7 failed 4,419 passed, 7 failed (same 7)

The 7 server failures are git-remote tests in RepositoryIdentityResolver.test.ts and GitStatus.test.ts. They fail the same way on main in this sandbox and pass in GitHub CI.

I didn't run the Rust resource-monitor steps, because this PR touches no Rust code.

GitHub CI: Server tests (4/4) fails 026_CanonicalizeModelSelectionOptions.test.ts > converts legacy object-shape options into array-shape on projections and events, where one project row's options stays a JSON string. The same test fails in the 11-12 release-PR run built from main (run 43165691057, Server tests 4/4), and it passes locally on both main and this branch. That makes it a main-side failure that this PR doesn't touch. A rerun failed the same way.

An independent GPT-6.1 Sol review (medium effort) found no issues in the first commit. On the second commit it flagged unrelated lockfile churn: needle's sax 1.6.0 -> 1.6.1 and Expo optional-peer hashes. I reverted those hunks, pnpm install --frozen-lockfile still passes, and a second Sol pass found no issues.

Not checked: live span capture through Daytona's tracer. My local probe recorded no spans on main either, so it can't tell the two versions apart.

Merge Danger

This is two-way: reverting the commit restores the previous overrides and lockfile. The riskiest part is hono 4.13.16's stricter middleware and router behavior under the MCP HTTP transports.

Blast radius: MCP server and client transports, and the FTP path through get-uri. Akeru code doesn't import hono, @hono/node-server or basic-ftp directly.

Not fixed here: vendored .repos/* lockfiles, which are read-only. Open #364 adds hono ^4.13.0 to a new package; once it rebases, the override resolves that to 4.13.16.

Created with Claude Opus 5.5 in Capy.

…asic-ftp to 6.2.4

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
@vercel

vercel Bot commented Nov 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
akeru-bot-landing Building Building Preview Nov 13, 2026 3:03pm UTC

Request Review

@github-actions github-actions Bot added the vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. label Nov 13, 2026

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

@greptile-apps

greptile-apps Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; no actionable new defects were found.

Summary

Updates dependency versions intended to address published advisories.

  • MCP HTTP transports resolve to newer Hono packages.
  • FTP URI access resolves a newer basic-ftp release.
  • HTTP instrumentation resolves to a newer OpenTelemetry package.
  • The marketing site uses Astro 7.4.7 and its refreshed dependencies.

No actionable new issues were found. Checks were limited to source and dependency metadata; no builds or tests were run.

Reviews (2) · Last reviewed commit: "fix(security): move astro to 7.4.7 and @..." · Reviewed by Greptile

…-http to 0.222.0

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
@capy-ai capy-ai Bot changed the title fix(security): hono 4.13.11 -> 4.13.16 (CVE-2026-126355) +8 more fix(security): hono 4.13.11 -> 4.13.16 (CVE-2026-126355) +11 more Nov 14, 2026
@github-actions github-actions Bot added size:XL and removed size:M labels Nov 14, 2026

This branch was successfully deployed

1 active deployment
Preview — aa937ec7 Deployed Nov 14, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant