fix(deps): bump next to 15.5.24 and sharp to 0.35.4 for critical RCE advisories - #395
polylane[bot] wants to merge 2 commits into
Conversation
Co-authored-by: polylane[bot] <277585245+polylane[bot]@users.noreply.github.com>
…advisories Co-authored-by: polylane[bot] <277585245+polylane[bot]@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Review or Edit in CodeSandboxOpen the branch in Web Editor • VS Code • Insiders |
PR Summary
|
|
Code Terrier Review unavailable for this commit: every reviewer model hit an infrastructure fault (upstream provider unavailable, not a code problem) - push a new commit or |
Fixes: Live ding.one and dex.group run Next.js versions exposed to critical unauthenticated RCE advisories
The public ding.one site ran a Next.js version affected by two critical unauthenticated remote-code-execution advisories, and the dependency update that fixes it could not reach production because the project's own build was broken under its pinned toolchain. The site's image optimizer, which the more severe advisory targets, answered requests on the live host. After this merges, the site builds on a supported Node release and ships the patched Next.js and image library.
What caused this
Affected:
int_0a8732aaa001flf6s11fmt73Why this fix
ding.one pinned
next15.1.0 andsharp0.33.5. GitHub advisory GHSA-p293-qw3h-jr36 (CVE-2026-75604, CVSS 9.0) and GHSA-2xp9-vwfh-vxw4 mark Next.js>=13.4.0, <15.5.24and>=16.0.0, <16.3.3vulnerable; GHSA-rgj7-g3m4-5g8c marks sharp<0.35.4. The live optimizer answered a real asset request with HTTP 200image/png, so the Image Optimization API the second advisory targets is reachable rather than disabled.The version bump alone cannot land. The repo's Node CI installs on Node 8/10/12 and the committed app code does not build under a current Next, which is why the prepared Renovate updates (#389, #393) have sat unmergeable. This change stacks the bumps on the build/CI repair already prepared in #394 (Node 22 with pnpm, tinykeys named import,
next/font, environment guards), so a single merge removes the exposure instead of waiting on a separate repair to land first. Validation is a real build on that tree:pnpm install --frozen-lockfileis a no-op andpnpm buildcompiles and prerenders all 12 pages with next@15.5.24 and sharp@0.35.4.Remaining work is recorded on the issue: dingyi/dex.group still pins next 13.5.6 on its live "coming soon" deploy and needs an owner decision to upgrade in one pass or retire, since the advisory covers every Next.js below 15.5.24 and the repo has no CI to validate a major upgrade.
Out of scope
13 files changed (+332/-273)
.github/workflows/nodejs.yml: modified, +14/-13components/CommandMenu/index.tsx: modified, +1/-1components/PageTitle/index.tsx: modified, +2/-2lib/bookmarks.ts: modified, +4/-0lib/reading.ts: modified, +4/-0next.config.js: modified, +0/-3package.json: modified, +3/-3pages/_app.tsx: modified, +2/-2pages/gear.tsx: modified, +3/-0pages/newsletters.tsx: modified, +3/-0pages/podcasts.tsx: modified, +3/-0pages/stack.tsx: modified, +3/-0pnpm-lock.yaml: modified, +290/-249Generated by Polylane. You can ask follow-ups by mentioning @polylane in a comment.