Bump form-data to bring in fix for critical vulnerability#652
Merged
HarithaVattikuti merged 1 commit intoactions:mainfrom Jul 30, 2025
gowridurgad:bumps-form-data
Merged
Bump form-data to bring in fix for critical vulnerability#652HarithaVattikuti merged 1 commit intoactions:mainfrom gowridurgad:bumps-form-data
HarithaVattikuti merged 1 commit intoactions:mainfrom
gowridurgad:bumps-form-data
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR upgrades the form-data dependency to version 4.0.4 to address CVE-2025-7783, a critical security vulnerability where form-data used Math.random() for boundary generation, allowing potential boundary prediction and request manipulation attacks.
- Updates form-data from version 4.0.0 to 4.0.4 and from 2.5.1 to 2.5.5
- Adds new license files for dependencies introduced by the form-data upgrade
- Updates existing license files for minor version bumps of indirect dependencies
Reviewed Changes
Copilot reviewed 18 out of 21 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| .licenses/npm/form-data-4.0.4.dep.yml | Updates form-data license from version 4.0.0 to 4.0.4 and fixes README reference |
| .licenses/npm/form-data-2.5.5.dep.yml | Updates form-data license from version 2.5.1 to 2.5.5 |
| .licenses/npm/brace-expansion.dep.yml | Updates brace-expansion license from version 1.1.11 to 1.1.12 |
| Multiple new license files | Adds license files for new dependencies: safe-buffer, math-intrinsics, hasown, has-tostringtag, has-symbols, gopd, get-proto, get-intrinsic, function-bind, es-set-tostringtag, es-object-atoms, es-errors, es-define-property, dunder-proto, call-bind-apply-helpers |
aparnajyothi-y
approved these changes
Jul 30, 2025
lmvysakh
approved these changes
Jul 30, 2025
HarithaVattikuti
approved these changes
Jul 30, 2025
This was referenced Sep 8, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR upgrades the form-data dependency to version 4.0.4 using npm audit fix, resolving a critical security vulnerability identified as CVE-2025-7783.
Vulnerability Summary:
form-data previously used Math.random() to generate boundary values for multipart form-encoded data. Because Math.random() is a pseudo-random number generator, it can be predicted if an attacker:
Can observe outputs of Math.random() in the application (e.g., via request headers), and
Can control at least one field in a form-data request.
This predictability allows an attacker to guess the multipart boundary, enabling them to inject additional fields or override values in downstream requests, leading to potential manipulation of internal services.
Affected Package:
Package: form-data
Vulnerable Versions: < 2.5.4
Fixed Version: >= 2.5.4 (current version after fix: 4.0.4)
Resolution:
This PR brings in the fix by allowing npm audit fix to bump the form-data version to 4.0.4, which no longer uses Math.random() and includes proper randomization for multipart boundaries.
Related issue:
dependabot alert #39
dependabot alert #40