Skip to content

security: clear 59 CVEs (incl. 2 CRITICAL: next, form-data)#3

Merged
CrashBytes merged 1 commit into
mainfrom
security/2026-05-24-cves
May 25, 2026
Merged

security: clear 59 CVEs (incl. 2 CRITICAL: next, form-data)#3
CrashBytes merged 1 commit into
mainfrom
security/2026-05-24-cves

Conversation

@CrashBytes
Copy link
Copy Markdown
Owner

Summary

59 vulns (2 CRIT, 23 HIGH, 35 MOD, 5 LOW) → 0.

Key fixes

  • next 15.3.5 → 16.2.6 (10 vulns incl. CRITICAL GHSA-9qr9-h5gf-34mp)
  • form-data CRITICAL GHSA-fjxv-7rqg-78g4 via npm overrides
  • axios 1.10 → 1.16.1 (6 HIGH)
  • express 4.18 → 5.2.1 in server (removes vulnerable path-to-regexp 0.1.x and 5 other HIGH transitives)
  • contentful-management 11.54 → 12.5
  • React/types/typescript/nodemon bumped via ncu
  • Pinned client deps to explicit versions (was "latest" which is bad practice — it's what gave us the vulnerable 15.3.5 in the first place)
  • Removed yarn.lock — stale artifact; project uses npm now per actual install path. Was the source of phantom lodash 4.17.21 reports.

Overrides for transitive vulns

postcss ^8.5.15 · js-yaml ^4.1.1 · picomatch ^4.0.4

Test plan

  • npm install on client + server succeeds
  • osv-scanner reports 0 vulns (was 59)
  • Hygiene flag (not addressed): client/.next/ build artifacts (including binary .pack.gz cache files) are committed to the repo. .gitignore lacks a .next/ entry. Separate cleanup recommended.

🤖 Generated with Claude Code

59 vulns (2 CRIT, 23 HIGH, 35 MOD, 5 LOW) -> 0 after this PR.

Top fixes:
- next 15.3.5 -> 16.2.6 (10 vulns incl. CRITICAL GHSA-9qr9-h5gf-34mp)
- axios 1.10 -> 1.16.1 (6 HIGH)
- form-data fix via npm overrides (CRITICAL GHSA-fjxv-7rqg-78g4)
- express 4.18 -> 5.2.1 (server; removes vulnerable path-to-regexp 0.1.x)
- contentful-management 11.54 -> 12.5
- React/types/typescript/nodemon/etc bumped via ncu
- Removed yarn.lock (stale; project uses npm now per actual install path)
- Pinned client deps to explicit versions (was 'latest' which is bad practice)

Overrides for transitive vulns: postcss ^8.5.15, js-yaml ^4.1.1,
picomatch ^4.0.4.

Note: client/.next/ build artifacts are committed to the repo
(.gitignore lacks a .next/ entry). Not addressed in this PR — separate
cleanup recommended.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 25, 2026 02:11
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR aims to eliminate reported dependency vulnerabilities across the repo by upgrading major framework/library versions and applying transitive dependency overrides, while also adjusting lockfiles/package manager artifacts.

Changes:

  • Upgrade core dependencies (notably Next.js, Express, Contentful SDKs, Axios, React/TypeScript-related tooling) to versions that resolve known CVEs.
  • Add npm lockfiles for client/ and server/ and introduce npm overrides for vulnerable transitives.
  • Remove the root yarn.lock (while retaining/altering Yarn lockfiles under subprojects).

Reviewed changes

Copilot reviewed 3 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
yarn.lock Removes the root Yarn lockfile.
package.json Bumps concurrently; root scripts still run subprojects via Yarn.
server/package.json Upgrades server dependencies (incl. Express 5) and adds npm overrides.
server/package-lock.json Adds npm lockfile capturing updated server dependency tree.
client/package.json Pins client deps to explicit ranges, adds npm overrides.
client/package-lock.json Adds npm lockfile capturing updated client dependency tree.
client/yarn.lock Updates Yarn lockfile for new client dependency versions.
Files not reviewed (2)
  • client/package-lock.json: Language not supported
  • server/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Comment on lines +21 to +24
"scripts": {
"test": "jest",
"dev": "concurrently \"yarn --cwd client dev\" \"yarn --cwd server dev\""
},
Comment thread client/package.json
Comment on lines +32 to 36
"overrides": {
"postcss": "^8.5.15",
"js-yaml": "^4.1.1",
"picomatch": "^4.0.4"
}
Comment thread client/package.json
Comment on lines +10 to +13
"dependencies": {
"next": "^16.2.6",
"react": "^19.2.6",
"react-dom": "^19.2.6"
Comment thread server/package.json
Comment on lines +18 to +22
"overrides": {
"postcss": "^8.5.15",
"js-yaml": "^4.1.1",
"picomatch": "^4.0.4"
}
Comment thread package.json
Comment on lines +23 to +26
"dev": "concurrently \"yarn --cwd client dev\" \"yarn --cwd server dev\""
},
"dependencies": {
"concurrently": "^9.2.1"
@CrashBytes CrashBytes merged commit 887e099 into main May 25, 2026
2 of 3 checks passed
@CrashBytes CrashBytes deleted the security/2026-05-24-cves branch May 25, 2026 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants