fix(deps): pin transitive adm-zip to 0.6.0 for CVE-2026-39244 - #268
Conversation
|
Warning Review limit reached
Next review available in: 56 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
📝 WalkthroughWalkthrough
ChangesDependency override
Estimated code review effort: 1 (Trivial) | ~2 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
adm-zip is transitive via @huggingface/transformers -> onnxruntime-node -> adm-zip@^0.5.16. The orchestrator Trivy scan gate (run 29626877176) failed on CVE-2026-39244 (DoS via crafted ZIP forcing unbounded Buffer.alloc). GHSA-xcpc-8h2w-3j85 records firstPatched=0.6.0, so the fix is forced via overrides; 0.5.18 would not satisfy the GHSA-keyed gate. Verified: trivy fs reports 0 adm-zip vulns; typecheck passes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TZqAX7ajr96SNFgQejP7fi
9e6d753 to
2afb790
Compare
Pins
adm-zipto0.6.0viapackage.jsonoverridesto close GHSA-xcpc-8h2w-3j85 (CVE-2026-39244, adm-zip DoS via crafted ZIP forcing unboundedBuffer.alloc), following the repo's established convention for transitive dependency pins (see existingpicomatch,protobufjsoverrides).Why
The orchestrator Trivy scan job on the release-please pipeline (run 29626877176) failed on this CVE. The orchestrator image gates CI on CRITICAL/HIGH severities (the daemon image variant does not), so this was blocking the release pipeline.
adm-zipis a transitive dependency:@huggingface/transformers@4.2.0→onnxruntime-node@1.24.3→adm-zip@^0.5.16. GHSA-xcpc-8h2w-3j85 recordsfirstPatched = 0.6.0(vulnerable range<0.6.0). Trivy keys its npm advisory data on the GHSA, not NVD, so0.5.18(the NVD-listed fix) would not satisfy the gate;0.6.0is required. Because0.6.0is a major bump outside onnxruntime's^0.5.16range, it can't be resolved by bumping a direct dependency and is instead forced viaoverrides.Safety
onnxruntime-nodeinvokesadm-ziponly from its install script (a singleextractEntryToon a file entry, read back at basename). adm-zip 0.6.0's only behavioral change (upstream #306) affects directory-entry handling, which this call path does not exercise. The dependency runs at install time only, never at runtime.Verification
bun installresolvesadm-zip@0.6.0as the sole lockfile entry (no0.5.17remnant)bun run typecheckpassestrivy fsagainst the updated tree reports 0adm-zipvulnerabilitiesflowchart LR HFT["@huggingface/transformers<br/>4.2.0"]:::keep --> ORT["onnxruntime-node<br/>1.24.3"]:::keep ORT -- "range ^0.5.16<br/>install-time only" --> OLD["adm-zip 0.5.17<br/>vulnerable<br/>GHSA-xcpc-8h2w-3j85"]:::bad OVR["package.json overrides<br/>adm-zip 0.6.0"]:::fix -. forces resolution .-> NEW["adm-zip 0.6.0<br/>patched"]:::good ORT -. "resolved dep after override" .-> NEW classDef keep fill:#2c3e50,color:#ffffff classDef bad fill:#c0392b,color:#ffffff classDef fix fill:#ecf0f1,color:#2c3e50 classDef good fill:#27ae60,color:#ffffff🤖 Generated with Claude Code
https://claude.ai/code/session_01TZqAX7ajr96SNFgQejP7fi
Summary by CodeRabbit
adm-zipversion 0.6.0.