chore(deps): raise fast-uri and qs override floors past open advisories - #900
Closed
MBombeck wants to merge 1 commit into
Closed
chore(deps): raise fast-uri and qs override floors past open advisories#900MBombeck wants to merge 1 commit into
MBombeck wants to merge 1 commit into
Conversation
`pnpm audit --prod --audit-level=high` has been red on every open PR, which is why #892, #893 and #899 all show a failing Dependency Audit while the rest of their checks are green. Six advisories, two packages, both transitive: - fast-uri 3.1.5 (4x high) — percent-encoded scheme normalization and skipped IDN handling let a crafted URL read as a different host than the one it resolves to. Arrives under ajv via @hookform/resolvers and the MCP SDK. Floor moved to 3.1.6. - qs 6.15.3 (2x moderate) — bracket-key comma parsing walks around arrayLimit, and an attacker-controlled isBuffer turns a request body into a hang. This is express 5's copy under the MCP SDK's HTTP transport, so it sits on a request path. Floor moved to 6.16.0; body-parser asks for ^6.15.2 and express for ^6.14.0, so neither is dragged onto a new major. Both bounds follow the existing pnpm-workspace.yaml pattern and stay on the same minor line. Only two packages move in the lockfile. Verified: pnpm audit --prod --audit-level=high reports no known vulnerabilities, pnpm typecheck and pnpm build pass, and the unit suite is 22510 passing.
Owner
Author
|
Same two floors, same versions, landed as part of #905 a couple of hours ago and merged with v1.38.5. Closing this one as already done rather than as wrong: it named exactly the right fixes. The lockstep guard that compares the workspace pins against the image's own install was widened in the same release, so a floor that is set in one place and not the other now fails loudly. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Dependency Audit job has been failing on every open PR — #892, #893 and #899 all show it red while everything else is green. It is not their fault:
pnpm audit --prod --audit-level=highis red onmaintoo. Six advisories, two transitive packages.fast-uri 3.1.5 → 3.1.6 (4× high)
Percent-encoded scheme normalization and skipped IDN handling let a crafted URL read as a different host than the one it actually resolves to — the exact confusion class
isPublicUrlexists to catch. Both copies arrive underajv, pulled in by@hookform/resolversand the MCP SDK.GHSA-jqff-g426-hqxp, GHSA-5jgf-p345-68v8, GHSA-f65p-4m7j-42xc, GHSA-fph4-wmhf-6fwf
qs 6.15.3 → 6.16.0 (2× moderate)
Bracket-key comma parsing walks around
arrayLimit, and an attacker-controlledisBufferturns a request body into a hang. This copy is express 5's, reached through the MCP SDK's HTTP transport, so it sits on a request path rather than a build path.body-parserasks for^6.15.2andexpressfor^6.14.0, so 6.16.0 satisfies both without a major.GHSA-x5fp-wj9c-mxmx, GHSA-4mjr-xmp4-gh2g
Both bounds go into
pnpm-workspace.yamlthe same way as the ones already there, with a comment naming the advisory and the path it arrives on. Same minor line in both cases, and the lockfile moves exactly two packages.Verification
pnpm audit --prod --audit-level=high→ No known vulnerabilities found (was: 4 high, 2 moderate)pnpm typecheck→ cleanpnpm build→ succeeds, 320 static pagespnpm test→ 22510 passing, 12 skipped. One timing flake intimezone-explicit-formatter-guard.test.ts(5s timeout on the grep guard, cold cache on this machine); passes on its own in 5.9s and is unrelated to either package.Once this is on
main, rebasing #892/#893/#899 should turn their Dependency Audit green.