Skip to content

fix: resolve 7 dependency security vulnerabilities (4 high, 3 medium)#548

Open
vicperdana wants to merge 1 commit into
mainfrom
fix/dependabot-alerts-2026-05
Open

fix: resolve 7 dependency security vulnerabilities (4 high, 3 medium)#548
vicperdana wants to merge 1 commit into
mainfrom
fix/dependabot-alerts-2026-05

Conversation

@vicperdana
Copy link
Copy Markdown
Contributor

Summary

Closes all 7 open Dependabot alerts on main. All findings are transitive npm dependencies; no source-code changes are required.

Following the pattern established in #539, each vulnerable transitive is force-pinned to its first patched version via the npm overrides field in package.json. The existing mocha.diff nested override is preserved.

Alerts addressed

Alert Package Severity Patched GHSA / CVE
#69 fast-uri High 3.1.2 GHSA-q3j6-qgpj-74h6 / CVE-2026-6321 — path traversal
#70 fast-uri High 3.1.2 GHSA-v39h-62p7-jpjc / CVE-2026-6322 — host confusion
#66 lodash High 4.18.1 GHSA-r5fr-rjxr-66jc / CVE-2026-4800 — code injection
#67 lodash Medium 4.18.1 GHSA-f23m-r3pf-42rh / CVE-2026-2950 — prototype pollution
#61 picomatch High 2.3.2 GHSA-c2c7-rcm5-vvqj / CVE-2026-33671 — ReDoS
#62 picomatch Medium 2.3.2 GHSA-3v7f-55p6-f55p / CVE-2026-33672 — method injection
#65 serialize-javascript (dev) Medium 7.0.5 GHSA-qj8w-gfj5-8c6v / CVE-2026-34043 — DoS

Changes

  • package.json — promote serialize-javascript out of the nested mocha override and bump ^7.0.4^7.0.5; add top-level overrides for fast-uri ^3.1.2, lodash ^4.18.1, picomatch ^2.3.2. The mocha.diff ^8.0.3 override is preserved.
  • package-lock.json — regenerated by npm install. No new top-level packages.

picomatch deliberately stays on the v2.x line because micromatch@4 (transitive via fast-globglobby and @typescript-eslint/typescript-estree) declares picomatch ^2.3.1; v4 is a breaking API change.

Validation

  • npm install — clean install, no errors
  • npm audit0 vulnerabilities (info/low/moderate/high/critical all 0)
  • Resolved versions verified in lockfile:
    • node_modules/fast-uri → 3.1.2
    • node_modules/lodash → 4.18.1
    • node_modules/picomatch → 2.3.2
    • node_modules/serialize-javascript → 7.0.5
  • npm run pack (vsce) successfully loaded the full @vscode/vsce@secretlint/nodeajvfast-uri chain end-to-end. (The pre-existing engines.vscode pre-flight error is unrelated to this change and reproduces on main.)

Out of scope

Pre-existing issues unrelated to this PR (verified to reproduce on clean main):

  • ESLint 9.x eslint.config.* migration warning
  • TypeScript @types/glob / minimatch typings mismatch
  • vsce engines.vscode vs @types/vscode mismatch

These are out of scope for this security-only PR.

Force-pin transitive dependencies via npm overrides to address all open
Dependabot alerts. No source-code changes required.

Pinned versions:
- fast-uri ^3.1.2  (was 3.1.0)  fixes #69, #70
- lodash ^4.18.1   (was 4.17.23) fixes #66, #67
- picomatch ^2.3.2 (was 2.3.1)  fixes #61, #62
- serialize-javascript ^7.0.5 (was 7.0.4) fixes #65

Detail:
- GHSA-q3j6-qgpj-74h6 / CVE-2026-6321  fast-uri path traversal (high) #69
- GHSA-v39h-62p7-jpjc / CVE-2026-6322  fast-uri host confusion (high) #70
- GHSA-r5fr-rjxr-66jc / CVE-2026-4800  lodash code injection (high) #66
- GHSA-f23m-r3pf-42rh / CVE-2026-2950  lodash prototype pollution (medium) #67
- GHSA-c2c7-rcm5-vvqj / CVE-2026-33671 picomatch ReDoS (high) #61
- GHSA-3v7f-55p6-f55p / CVE-2026-33672 picomatch method injection (medium) #62
- GHSA-qj8w-gfj5-8c6v / CVE-2026-34043 serialize-javascript DoS (medium, dev) #65

Validation:
- npm audit reports 0 vulnerabilities
- All resolved versions verified in package-lock.json
- npm run pack loads the full @secretlint/@vscode/vsce dependency chain
  successfully (existing engines.vscode pre-flight error is unrelated)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@vicperdana vicperdana requested a review from BernieWhite May 11, 2026 04:54
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.

1 participant