Skip to content

fix(deps): security vulnerabilities in api #982

Description

@paulushcgcj

Problem Description

The api service has 16 open Dependabot security alerts across 8 packages, including 1 critical, 7 high, and 8 moderate/low severity vulnerabilities.

Impact

All HTTP request processing, email delivery, file upload, validation, and shell command execution paths in the API are affected. Attackers could exploit these to cause denial of service, inject arbitrary HTTP headers/emails, bypass file access controls, leak information, or execute shell commands.

Affected Packages

Package CVE/GHSA Severity Fix Version
shell-quote CVE-2026-9277 critical 1.8.4
linkify-it CVE-2026-48801 high 5.0.1
undici CVE-2026-12151 high 6.27.0
nodemailer GHSA-p6gq-j5cr-w38f high 9.0.1
multer CVE-2026-5079 high 2.2.0
form-data CVE-2026-12143 high 4.0.6
undici CVE-2026-9679 moderate 6.27.0
nodemailer GHSA-268h-hp4c-crq3 moderate 8.0.9
nodemailer GHSA-wqvq-jvpq-h66f moderate 8.0.9
nodemailer GHSA-r7g4-qg5f-qqm2 moderate 8.0.8
multer CVE-2026-5038 moderate 2.2.0
joi CVE-2026-48038 moderate 17.13.4
js-yaml CVE-2026-53550 moderate 3.15.0 / 4.2.0
undici CVE-2026-11525 low 6.27.0
undici CVE-2026-6733 low 6.27.0

Steps to Reproduce

  1. Deploy the api service with current lockfile
  2. Run npm audit to confirm vulnerabilities
  3. Exploit paths vary per CVE — see individual advisory links in the GitHub security tab

Expected Behavior

All dependencies should be at versions confirmed safe by their respective security advisories.

Actual Behavior

16 open alerts exist. Critical shell-quote vulnerability (CVE-2026-9277) allows shell injection via unescaped newlines in object .op values. Multiple high-severity issues enable DoS, header injection, and access control bypasses.

Environment

  • Service: fom-api
  • Language: Node.js ^24.1.0
  • Environment: all (dev / test / prod)

Additional Context

This issue tracks remediation for the api dependency group. Each fix follows advisory-recommended versions. Fixes will be applied per package via direct version bumps, parent upgrades, or npm audit fix as appropriate.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions