Skip to content

R11DT-3980 - Bump transitive deps axios and brace-expansion (security) - #204

Merged
OS-alexandretome merged 1 commit into
b11from
R11DT-3980-bump-transitive-dependencies-axios-and-brace-expansion
Jun 3, 2026
Merged

R11DT-3980 - Bump transitive deps axios and brace-expansion (security)#204
OS-alexandretome merged 1 commit into
b11from
R11DT-3980-bump-transitive-dependencies-axios-and-brace-expansion

Conversation

@OS-alexandretome

Copy link
Copy Markdown

What

Patches two transitive vulnerabilities surfaced in the swagger-ui dependency tree:

Package Was Now Advisory
axios 1.15.0 1.17.0 GHSA-35jp-ww65-95wh (High)
brace-expansion (under @swagger-api/apidom-reference) 5.0.5 5.0.6 GHSA-jxxr-4gwj-5jf2 (Medium)

Both are pulled in transitively via swagger-client@swagger-api/apidom-reference. dist/ bundles rebuilt.

Why this approach (scoped overrides)

  • Both parents already declare caret ranges that allow the patched versions, so a minimal overrides floor is enough — no need to touch swagger-client/apidom.
  • Bumping apidom was rejected: its latest only moves axios to 1.15.0 (still vulnerable, <1.16.0), and its brace-expansion fix is a deps-dev change that does not reliably reach the shipped runtime tree. Higher churn, covers neither vuln fully.
  • brace-expansion is scoped under @swagger-api/apidom-reference rather than top-level, to avoid forcing the unrelated 1.x/2.x copies (minimatch, rimraf) into a major-version jump.

Risk

Low. swagger-ui is consumed by Platform purely as a browser bundle (REST API doc viewer, "Try It Out" disabled). The axios proxy-MITM vector is Node-only; brace-expansion is at most a self-DoS on a developer-authored spec. Patching primarily clears the security-scanner flag.

Force patched versions via scoped npm overrides:
- axios >=1.16.0 (GHSA-35jp-ww65-95wh, High - prototype pollution -> proxy MITM)
- @swagger-api/apidom-reference > brace-expansion >=5.0.6
  (GHSA-jxxr-4gwj-5jf2, Medium - ReDoS/memory)

Rebuilt dist bundles.

Copilot AI left a comment

Copy link
Copy Markdown

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 addresses two reported transitive dependency vulnerabilities by using npm overrides to force patched versions of axios and brace-expansion, and then rebuilding the distributable dist/ assets so the shipped bundle reflects the updated dependency tree.

Changes:

  • Added npm overrides to enforce axios >=1.16.0 and @swagger-api/apidom-referencebrace-expansion >=5.0.6.
  • Updated package-lock.json to resolve axios@1.17.0 and brace-expansion@5.0.6 (plus related dependency graph changes).
  • Rebuilt dist/ assets (CSS and HTML cache-busting hashes updated).

Reviewed changes

Copilot reviewed 1 out of 12 changed files in this pull request and generated no comments.

File Description
package.json Adds overrides entries to floor patched transitive versions.
package-lock.json Updates resolved versions for axios and brace-expansion and related lock metadata.
dist/swagger-ui.css Rebuilt CSS bundle output.
dist/index.html Updates cache-busting query hashes for rebuilt assets.

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

@OS-alexandretome
OS-alexandretome marked this pull request as ready for review June 3, 2026 13:23
@OS-alexandretome
OS-alexandretome requested a review from a team as a code owner June 3, 2026 13:23
@OS-alexandretome

Copy link
Copy Markdown
Author

tested in Platform:
image

@OS-alexandretome
OS-alexandretome merged commit bb75164 into b11 Jun 3, 2026
12 checks passed
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.

3 participants