CVE-2024-34075 (GCVE-0-2024-34075)
Vulnerability from cvelistv5
Published
2024-05-03 17:51
Modified
2024-08-02 02:42
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-502 - Deserialization of Untrusted Data
Summary
kurwov is a fast, dependency-free library for creating Markov Chains. An unsafe sanitization of dataset contents on the `MarkovData#getNext` method used in `Markov#generate` and `Markov#choose` allows a maliciously crafted string on the dataset to throw and stop the function from running properly. If a string contains a forbidden substring (i.e. `__proto__`) followed by a space character, the code will access a special property in `MarkovData#finalData` by removing the last character of the string, bypassing the dataset sanitization (as it is supposed to be already sanitized before this function is called). Any dataset can be contaminated with the substring making it unable to properly generate anything in some cases. This issue has been addressed in version 3.2.5 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
References
| URL | Tags | |
|---|---|---|
|
|
||
{
"containers": {
"adp": [
{
"affected": [
{
"cpes": [
"cpe:2.3:a:xiboon:kurwov:*:*:*:*:*:*:*:*"
],
"defaultStatus": "unknown",
"product": "kurwov",
"vendor": "xiboon",
"versions": [
{
"lessThanOrEqual": "3.2.5",
"status": "affected",
"version": "3.1.0",
"versionType": "custom"
}
]
}
],
"metrics": [
{
"other": {
"content": {
"id": "CVE-2024-34075",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2024-05-03T20:04:26.343021Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2024-06-04T17:41:31.759Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
},
{
"providerMetadata": {
"dateUpdated": "2024-08-02T02:42:59.964Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"name": "https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr",
"tags": [
"x_refsource_CONFIRM",
"x_transferred"
],
"url": "https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr"
},
{
"name": "https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9",
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9"
},
{
"name": "https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44",
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44"
}
],
"title": "CVE Program Container"
}
],
"cna": {
"affected": [
{
"product": "kurwov",
"vendor": "xiboon",
"versions": [
{
"status": "affected",
"version": "\u003e= 3.1.0, \u003c 3.2.5"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "kurwov is a fast, dependency-free library for creating Markov Chains. An unsafe sanitization of dataset contents on the `MarkovData#getNext` method used in `Markov#generate` and `Markov#choose` allows a maliciously crafted string on the dataset to throw and stop the function from running properly. If a string contains a forbidden substring (i.e. `__proto__`) followed by a space character, the code will access a special property in `MarkovData#finalData` by removing the last character of the string, bypassing the dataset sanitization (as it is supposed to be already sanitized before this function is called). Any dataset can be contaminated with the substring making it unable to properly generate anything in some cases. This issue has been addressed in version 3.2.5 and all users are advised to upgrade. There are no known workarounds for this vulnerability."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 6.2,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-502",
"description": "CWE-502: Deserialization of Untrusted Data",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2024-05-03T17:51:30.966Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr"
},
{
"name": "https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9"
},
{
"name": "https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44"
}
],
"source": {
"advisory": "GHSA-hfrv-h3q8-9jpr",
"discovery": "UNKNOWN"
},
"title": "kurwov vulnerable to Denial of Service due to improper data sanitization"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2024-34075",
"datePublished": "2024-05-03T17:51:30.966Z",
"dateReserved": "2024-04-30T06:56:33.382Z",
"dateUpdated": "2024-08-02T02:42:59.964Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1",
"vulnerability-lookup:meta": {
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr\", \"name\": \"https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr\", \"tags\": [\"x_refsource_CONFIRM\", \"x_transferred\"]}, {\"url\": \"https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9\", \"name\": \"https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}, {\"url\": \"https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44\", \"name\": \"https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T02:42:59.964Z\"}}, {\"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-34075\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-05-03T20:04:26.343021Z\"}}}], \"affected\": [{\"cpes\": [\"cpe:2.3:a:xiboon:kurwov:*:*:*:*:*:*:*:*\"], \"vendor\": \"xiboon\", \"product\": \"kurwov\", \"versions\": [{\"status\": \"affected\", \"version\": \"3.1.0\", \"versionType\": \"custom\", \"lessThanOrEqual\": \"3.2.5\"}], \"defaultStatus\": \"unknown\"}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-05-03T20:03:40.749Z\"}, \"title\": \"CISA ADP Vulnrichment\"}], \"cna\": {\"title\": \"kurwov vulnerable to Denial of Service due to improper data sanitization\", \"source\": {\"advisory\": \"GHSA-hfrv-h3q8-9jpr\", \"discovery\": \"UNKNOWN\"}, \"metrics\": [{\"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 6.2, \"attackVector\": \"LOCAL\", \"baseSeverity\": \"MEDIUM\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H\", \"integrityImpact\": \"NONE\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"HIGH\", \"privilegesRequired\": \"NONE\", \"confidentialityImpact\": \"NONE\"}}], \"affected\": [{\"vendor\": \"xiboon\", \"product\": \"kurwov\", \"versions\": [{\"status\": \"affected\", \"version\": \"\u003e= 3.1.0, \u003c 3.2.5\"}]}], \"references\": [{\"url\": \"https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr\", \"name\": \"https://github.com/xiboon/kurwov/security/advisories/GHSA-hfrv-h3q8-9jpr\", \"tags\": [\"x_refsource_CONFIRM\"]}, {\"url\": \"https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9\", \"name\": \"https://github.com/xiboon/kurwov/commit/85d63e652594f121d6656177d7a3c0d823c976c9\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44\", \"name\": \"https://github.com/xiboon/kurwov/blob/0d58dfa42135ab40e830e92622857282f980ca89/src/MarkovData.ts#L38-L44\", \"tags\": [\"x_refsource_MISC\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"kurwov is a fast, dependency-free library for creating Markov Chains. An unsafe sanitization of dataset contents on the `MarkovData#getNext` method used in `Markov#generate` and `Markov#choose` allows a maliciously crafted string on the dataset to throw and stop the function from running properly. If a string contains a forbidden substring (i.e. `__proto__`) followed by a space character, the code will access a special property in `MarkovData#finalData` by removing the last character of the string, bypassing the dataset sanitization (as it is supposed to be already sanitized before this function is called). Any dataset can be contaminated with the substring making it unable to properly generate anything in some cases. This issue has been addressed in version 3.2.5 and all users are advised to upgrade. There are no known workarounds for this vulnerability.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-502\", \"description\": \"CWE-502: Deserialization of Untrusted Data\"}]}], \"providerMetadata\": {\"orgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"shortName\": \"GitHub_M\", \"dateUpdated\": \"2024-05-03T17:51:30.966Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2024-34075\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-08-02T02:42:59.964Z\", \"dateReserved\": \"2024-04-30T06:56:33.382Z\", \"assignerOrgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"datePublished\": \"2024-05-03T17:51:30.966Z\", \"assignerShortName\": \"GitHub_M\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.1"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…