265 lines
12 KiB
JSON
265 lines
12 KiB
JSON
{
|
|
"containers": {
|
|
"cna": {
|
|
"affected": [
|
|
{
|
|
"product": "convict",
|
|
"vendor": "n/a",
|
|
"versions": [
|
|
{
|
|
"lessThan": "6.2.3",
|
|
"status": "affected",
|
|
"version": "unspecified",
|
|
"versionType": "custom"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"credits": [
|
|
{
|
|
"lang": "en",
|
|
"value": "Alessio Della Libera of Snyk Security Team"
|
|
}
|
|
],
|
|
"datePublic": "2022-05-13T00:00:00.000Z",
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"value": "This affects the package convict before 6.2.3. This is a bypass of [CVE-2022-22143](https://security.snyk.io/vuln/SNYK-JS-CONVICT-2340604). The [fix](https://github.com/mozilla/node-convict/commit/3b86be087d8f14681a9c889d45da7fe3ad9cd880) introduced, relies on the startsWith method and does not prevent the vulnerability: before splitting the path, it checks if it starts with __proto__ or this.constructor.prototype. To bypass this check it's possible to prepend the dangerous paths with any string value followed by a dot, like for example foo.__proto__ or foo.this.constructor.prototype."
|
|
}
|
|
],
|
|
"metrics": [
|
|
{
|
|
"cvssV3_1": {
|
|
"attackComplexity": "LOW",
|
|
"attackVector": "NETWORK",
|
|
"availabilityImpact": "HIGH",
|
|
"baseScore": 7.5,
|
|
"baseSeverity": "HIGH",
|
|
"confidentialityImpact": "NONE",
|
|
"integrityImpact": "NONE",
|
|
"privilegesRequired": "NONE",
|
|
"scope": "UNCHANGED",
|
|
"userInteraction": "NONE",
|
|
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
|
"version": "3.1"
|
|
}
|
|
}
|
|
],
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"description": "Prototype Pollution",
|
|
"lang": "en",
|
|
"type": "text"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"providerMetadata": {
|
|
"dateUpdated": "2022-05-13T20:00:38.000Z",
|
|
"orgId": "bae035ff-b466-4ff4-94d0-fc9efd9e1730",
|
|
"shortName": "snyk"
|
|
},
|
|
"references": [
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC"
|
|
],
|
|
"url": "https://snyk.io/vuln/SNYK-JS-CONVICT-2774757"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/blob/3b86be087d8f14681a9c889d45da7fe3ad9cd880/packages/convict/src/main.js%23L571"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC"
|
|
],
|
|
"url": "https://gist.github.com/dellalibera/cebce20e51410acebff1f46afdc89808"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/blob/master/CHANGELOG.md%23623---2022-05-07"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/commit/1ea0ab19c5208f66509e1c43b0d0f21c1fd29b75"
|
|
}
|
|
],
|
|
"title": "Prototype Pollution",
|
|
"x_legacyV4Record": {
|
|
"CVE_data_meta": {
|
|
"ASSIGNER": "report@snyk.io",
|
|
"DATE_PUBLIC": "2022-05-13T20:00:01.480583Z",
|
|
"ID": "CVE-2022-21190",
|
|
"STATE": "PUBLIC",
|
|
"TITLE": "Prototype Pollution"
|
|
},
|
|
"affects": {
|
|
"vendor": {
|
|
"vendor_data": [
|
|
{
|
|
"product": {
|
|
"product_data": [
|
|
{
|
|
"product_name": "convict",
|
|
"version": {
|
|
"version_data": [
|
|
{
|
|
"version_affected": "<",
|
|
"version_value": "6.2.3"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"vendor_name": "n/a"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"credit": [
|
|
{
|
|
"lang": "eng",
|
|
"value": "Alessio Della Libera of Snyk Security Team"
|
|
}
|
|
],
|
|
"data_format": "MITRE",
|
|
"data_type": "CVE",
|
|
"data_version": "4.0",
|
|
"description": {
|
|
"description_data": [
|
|
{
|
|
"lang": "eng",
|
|
"value": "This affects the package convict before 6.2.3. This is a bypass of [CVE-2022-22143](https://security.snyk.io/vuln/SNYK-JS-CONVICT-2340604). The [fix](https://github.com/mozilla/node-convict/commit/3b86be087d8f14681a9c889d45da7fe3ad9cd880) introduced, relies on the startsWith method and does not prevent the vulnerability: before splitting the path, it checks if it starts with __proto__ or this.constructor.prototype. To bypass this check it's possible to prepend the dangerous paths with any string value followed by a dot, like for example foo.__proto__ or foo.this.constructor.prototype."
|
|
}
|
|
]
|
|
},
|
|
"impact": {
|
|
"cvss": {
|
|
"attackComplexity": "LOW",
|
|
"attackVector": "NETWORK",
|
|
"availabilityImpact": "HIGH",
|
|
"baseScore": 7.5,
|
|
"baseSeverity": "HIGH",
|
|
"confidentialityImpact": "NONE",
|
|
"integrityImpact": "NONE",
|
|
"privilegesRequired": "NONE",
|
|
"scope": "UNCHANGED",
|
|
"userInteraction": "NONE",
|
|
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
|
"version": "3.1"
|
|
}
|
|
},
|
|
"problemtype": {
|
|
"problemtype_data": [
|
|
{
|
|
"description": [
|
|
{
|
|
"lang": "eng",
|
|
"value": "Prototype Pollution"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"references": {
|
|
"reference_data": [
|
|
{
|
|
"name": "https://snyk.io/vuln/SNYK-JS-CONVICT-2774757",
|
|
"refsource": "MISC",
|
|
"url": "https://snyk.io/vuln/SNYK-JS-CONVICT-2774757"
|
|
},
|
|
{
|
|
"name": "https://github.com/mozilla/node-convict/blob/3b86be087d8f14681a9c889d45da7fe3ad9cd880/packages/convict/src/main.js%23L571",
|
|
"refsource": "MISC",
|
|
"url": "https://github.com/mozilla/node-convict/blob/3b86be087d8f14681a9c889d45da7fe3ad9cd880/packages/convict/src/main.js%23L571"
|
|
},
|
|
{
|
|
"name": "https://gist.github.com/dellalibera/cebce20e51410acebff1f46afdc89808",
|
|
"refsource": "MISC",
|
|
"url": "https://gist.github.com/dellalibera/cebce20e51410acebff1f46afdc89808"
|
|
},
|
|
{
|
|
"name": "https://github.com/mozilla/node-convict/blob/master/CHANGELOG.md%23623---2022-05-07",
|
|
"refsource": "MISC",
|
|
"url": "https://github.com/mozilla/node-convict/blob/master/CHANGELOG.md%23623---2022-05-07"
|
|
},
|
|
{
|
|
"name": "https://github.com/mozilla/node-convict/commit/1ea0ab19c5208f66509e1c43b0d0f21c1fd29b75",
|
|
"refsource": "MISC",
|
|
"url": "https://github.com/mozilla/node-convict/commit/1ea0ab19c5208f66509e1c43b0d0f21c1fd29b75"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"adp": [
|
|
{
|
|
"providerMetadata": {
|
|
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
|
|
"shortName": "CVE",
|
|
"dateUpdated": "2024-08-03T02:31:59.871Z"
|
|
},
|
|
"title": "CVE Program Container",
|
|
"references": [
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC",
|
|
"x_transferred"
|
|
],
|
|
"url": "https://snyk.io/vuln/SNYK-JS-CONVICT-2774757"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC",
|
|
"x_transferred"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/blob/3b86be087d8f14681a9c889d45da7fe3ad9cd880/packages/convict/src/main.js%23L571"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC",
|
|
"x_transferred"
|
|
],
|
|
"url": "https://gist.github.com/dellalibera/cebce20e51410acebff1f46afdc89808"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC",
|
|
"x_transferred"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/blob/master/CHANGELOG.md%23623---2022-05-07"
|
|
},
|
|
{
|
|
"tags": [
|
|
"x_refsource_MISC",
|
|
"x_transferred"
|
|
],
|
|
"url": "https://github.com/mozilla/node-convict/commit/1ea0ab19c5208f66509e1c43b0d0f21c1fd29b75"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"cveMetadata": {
|
|
"assignerOrgId": "bae035ff-b466-4ff4-94d0-fc9efd9e1730",
|
|
"assignerShortName": "snyk",
|
|
"cveId": "CVE-2022-21190",
|
|
"datePublished": "2022-05-13T20:00:38.749Z",
|
|
"dateReserved": "2022-02-24T00:00:00.000Z",
|
|
"dateUpdated": "2024-09-17T03:32:50.471Z",
|
|
"state": "PUBLISHED"
|
|
},
|
|
"dataType": "CVE_RECORD",
|
|
"dataVersion": "5.1"
|
|
} |