rustsec-2020-0142
Vulnerability from osv_rustsec
Published
2020-11-29 12:00
Modified
2023-06-13 13:10
Summary
Send bound needed on T (for Send impl of `Bucket2`)
Details
Affected versions of this crate unconditionally implements Send for Bucket2. This allows sending non-Send types to other threads.
This can lead to data races when non Send types like Cell<T> or Rc<T> are contained inside Bucket2 and sent across thread boundaries. The data races can potentially lead to memory corruption (as demonstrated in the PoC from the original report issue).
The flaw was corrected in commit 15b2828 by adding a T: Send bound to the Send impl of Bucket2<T>.
{
"affected": [
{
"database_specific": {
"categories": [
"memory-corruption"
],
"cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
"informational": null
},
"ecosystem_specific": {
"affected_functions": null,
"affects": {
"arch": [],
"functions": [],
"os": []
}
},
"package": {
"ecosystem": "crates.io",
"name": "syncpool",
"purl": "pkg:cargo/syncpool"
},
"ranges": [
{
"events": [
{
"introduced": "0.0.0-0"
},
{
"fixed": "0.1.6"
}
],
"type": "SEMVER"
}
],
"versions": []
}
],
"aliases": [
"CVE-2020-36462",
"GHSA-r88h-6987-g79f",
"GHSA-vp6r-mrq9-8f4h"
],
"database_specific": {
"license": "CC0-1.0"
},
"details": "Affected versions of this crate unconditionally implements `Send` for `Bucket2`. This allows sending non-Send types to other threads.\n\nThis can lead to data races when non Send types like `Cell\u003cT\u003e` or `Rc\u003cT\u003e` are contained inside `Bucket2` and sent across thread boundaries. The data races can potentially lead to memory corruption (as demonstrated in the PoC from the original report issue).\n\nThe flaw was corrected in commit 15b2828 by adding a `T: Send` bound to the `Send` impl of `Bucket2\u003cT\u003e`.",
"id": "RUSTSEC-2020-0142",
"modified": "2023-06-13T13:10:24Z",
"published": "2020-11-29T12:00:00Z",
"references": [
{
"type": "PACKAGE",
"url": "https://crates.io/crates/syncpool"
},
{
"type": "ADVISORY",
"url": "https://rustsec.org/advisories/RUSTSEC-2020-0142.html"
},
{
"type": "REPORT",
"url": "https://github.com/Chopinsky/byte_buffer/issues/2"
}
],
"related": [],
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "Send bound needed on T (for Send impl of `Bucket2`)"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…