GHSA-w7rc-rwvf-8q5r
The `size` option isn't honored after following a redirect in node-fetch
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | node-fetch | >= 2.0.0, < 2.6.1 | 2.6.1 |
| npm | node-fetch | >= 3.0.0-beta.1, < 3.0.0-beta.9 | 3.0.0-beta.9 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Impact
Node Fetch did not honor the `size` option after following a redirect, which means that when a content size was over the limit, a `FetchError` would never get thrown and the process would end without failure.
For most people, this fix will have a little or no impact. However, if you are relying on node-fetch to gate files above a size, the impact could be significant, for example: If you don't double-check the size of the data after `fetch()` has completed, your JS thread could get tied up doing work on a large file (DoS) and/or cost you money in computing.
### Patches
We released patched versions for both stable and beta channels:
- For `v2`: 2.6.1
- For `v3`: 3.0.0-beta.9
### Workarounds
None, it is strongly recommended to update as soon as possible.
### For more information
If you have any questions or comments about this advisory:
* Open an issue in [node-fetch](https://github.com/node-fetch/node-fetch/issues/new?assignees=&labels=question&template=support-or-usage.md&title=Question%3A+)
* Contact one of the core maintainers.
References
External links from the advisory. They lead to third-party sites.
- https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r
- https://nvd.nist.gov/vuln/detail/CVE-2020-15168
- https://github.com/node-fetch/node-fetch/commit/2358a6c2563d1730a0cdaccc197c611949f6a334
- https://github.com/node-fetch/node-fetch/commit/eaff0094c4dfdd5b78711a8c4f1b61e33d282072
- https://github.com/node-fetch/node-fetch