Repository navigation
fix(deps): remediate body-parser denial-of-service advisory - #10056
Conversation
Upgrade body-parser to patched version 1.20.9. TICKET: WCN-3811
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.
Tip: disable this comment in your organization's Code Review settings.
|
@claude review |
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
Nothing blocking. The comments below are optional suggestions. There is no need to push a fix for them before merging.
Additional findings (outside the current diff — GitHub can't attach inline comments there):
-
🟡
yarn.lock— Running a plainyarn installafter merging will rewrite yarn.lock, because the qs entry still lists the old body-parser range and not the new one. body-parser now requires qs "~6.16.0" (yarn.lock:8154). The qs key at yarn.lock:17539 still listsqs@~6.15.1and has noqs@~6.16.0. Nothing else in the lockfile requests~6.15.1. Fix: regenerate the lockfile withyarn installso the key swapsqs@~6.15.1forqs@~6.16.0and still resolves to 6.16.0. Then commit the result.Why this was flagged
In yarn.lock:8154, the body-parser 1.20.9 entry declares
qs "~6.16.0". The only qs entry key, at yarn.lock:17539, listsqs@~6.15.1and has noqs@~6.16.0pattern. A grep shows no other entry depends onqs "~6.15.1", so that pattern is now orphaned and the new one is missing. The rootresolutionspin"qs": "6.16.0"(package.json:69) is why the resolved version is still right. Yarn 1.22.22 (packageManager) still records the requested pattern in the entry key, so the key is stale. A developer runningyarn installgets an unexpected yarn.lock diff that the base branch does not produce. CI jobs that run--frozen-lockfile/--with-frozen-lockfile(ci.yml:112, npmjs-release.yml:267) may fail with yarn's lockfile-outdated error. That depends on how yarn's frozen check treats a nested pattern rewritten by a resolution. The PR says a frozen install passed, but the lockfile is still not what yarn would generate.Verification: The trigger is any developer running the plain
yarn installthat CLAUDE.md documents. The diff changes the body-parser entry's dependency toqs "~6.16.0"(yarn.lock:8154), but it leaves the only qs entry key unchanged (yarn.lock:17539). CI usesyarn install --with-frozen-lockfile(.github/workflows/ci.yml:112), so CI does not catch this. Nothing breaks at runtime.
Description
Upgrade
body-parserfrom 1.20.6 to the patched 1.20.9 release through the root Yarn resolution, npm override, and lockfile.This remediates GHSA-27r3-jxmh-p828 / CVE-2026-111181. The vulnerable HTTP request-body middleware can terminate the process when a compressed request contains trailing bytes.
Issue
WCN-3811
Type of change
Verification
yarn check-depspassed.body-parser@1.20.9.git diff --checkpassed.Release impact
This removes the only advisory currently at or above the BitGoJS beta release threshold. The remaining 42 OSV advisory groups are below CVSS 7.0 and do not block the release gate.