Vulnerabilites related to node-fetch - node-fetch
cve-2020-15168
Vulnerability from cvelistv5
Published
2020-09-10 18:25
Modified
2024-08-04 13:08
Severity ?
EPSS score ?
Summary
node-fetch before versions 2.6.1 and 3.0.0-beta.9 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.
References
▼ | URL | Tags |
---|---|---|
https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r | x_refsource_CONFIRM | |
https://www.npmjs.com/package/node-fetch | x_refsource_MISC |
Impacted products
Vendor | Product | Version | ||
---|---|---|---|---|
node-fetch | node-fetch |
Version: <2.6.1 Version: >3.0.0-beta.1, <3.0.0-beta.9 |
{ containers: { adp: [ { providerMetadata: { dateUpdated: "2024-08-04T13:08:22.463Z", orgId: "af854a3a-2127-422b-91ae-364da2661108", shortName: "CVE", }, references: [ { tags: [ "x_refsource_CONFIRM", "x_transferred", ], url: "https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r", }, { tags: [ "x_refsource_MISC", "x_transferred", ], url: "https://www.npmjs.com/package/node-fetch", }, ], title: "CVE Program Container", }, ], cna: { affected: [ { product: "node-fetch", vendor: "node-fetch", versions: [ { status: "affected", version: "<2.6.1", }, { status: "affected", version: ">3.0.0-beta.1, <3.0.0-beta.9", }, ], }, ], descriptions: [ { lang: "en", value: "node-fetch before versions 2.6.1 and 3.0.0-beta.9 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.", }, ], metrics: [ { cvssV3_1: { attackComplexity: "HIGH", attackVector: "NETWORK", availabilityImpact: "LOW", baseScore: 2.6, baseSeverity: "LOW", confidentialityImpact: "NONE", integrityImpact: "NONE", privilegesRequired: "LOW", scope: "UNCHANGED", userInteraction: "REQUIRED", vectorString: "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:L", version: "3.1", }, }, ], problemTypes: [ { descriptions: [ { cweId: "CWE-20", description: "CWE-20: Improper Input Validation", lang: "en", type: "CWE", }, ], }, { descriptions: [ { cweId: "CWE-770", description: "CWE-770 Allocation of Resources Without Limits or Throttling", lang: "en", type: "CWE", }, ], }, ], providerMetadata: { dateUpdated: "2020-09-10T18:25:13", orgId: "a0819718-46f1-4df5-94e2-005712e83aaa", shortName: "GitHub_M", }, references: [ { tags: [ "x_refsource_CONFIRM", ], url: "https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r", }, { tags: [ "x_refsource_MISC", ], url: "https://www.npmjs.com/package/node-fetch", }, ], source: { advisory: "GHSA-w7rc-rwvf-8q5r", discovery: "UNKNOWN", }, title: "File size limit bypass in node-fetch", x_legacyV4Record: { CVE_data_meta: { ASSIGNER: "security-advisories@github.com", ID: "CVE-2020-15168", STATE: "PUBLIC", TITLE: "File size limit bypass in node-fetch", }, affects: { vendor: { vendor_data: [ { product: { product_data: [ { product_name: "node-fetch", version: { version_data: [ { version_value: "<2.6.1", }, { version_value: ">3.0.0-beta.1, <3.0.0-beta.9", }, ], }, }, ], }, vendor_name: "node-fetch", }, ], }, }, data_format: "MITRE", data_type: "CVE", data_version: "4.0", description: { description_data: [ { lang: "eng", value: "node-fetch before versions 2.6.1 and 3.0.0-beta.9 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.", }, ], }, impact: { cvss: { attackComplexity: "HIGH", attackVector: "NETWORK", availabilityImpact: "LOW", baseScore: 2.6, baseSeverity: "LOW", confidentialityImpact: "NONE", integrityImpact: "NONE", privilegesRequired: "LOW", scope: "UNCHANGED", userInteraction: "REQUIRED", vectorString: "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:L", version: "3.1", }, }, problemtype: { problemtype_data: [ { description: [ { lang: "eng", value: "CWE-20: Improper Input Validation", }, ], }, { description: [ { lang: "eng", value: "CWE-770 Allocation of Resources Without Limits or Throttling", }, ], }, ], }, references: { reference_data: [ { name: "https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r", refsource: "CONFIRM", url: "https://github.com/node-fetch/node-fetch/security/advisories/GHSA-w7rc-rwvf-8q5r", }, { name: "https://www.npmjs.com/package/node-fetch", refsource: "MISC", url: "https://www.npmjs.com/package/node-fetch", }, ], }, source: { advisory: "GHSA-w7rc-rwvf-8q5r", discovery: "UNKNOWN", }, }, }, }, cveMetadata: { assignerOrgId: "a0819718-46f1-4df5-94e2-005712e83aaa", assignerShortName: "GitHub_M", cveId: "CVE-2020-15168", datePublished: "2020-09-10T18:25:13", dateReserved: "2020-06-25T00:00:00", dateUpdated: "2024-08-04T13:08:22.463Z", state: "PUBLISHED", }, dataType: "CVE_RECORD", dataVersion: "5.1", }