Every CVE Search/ Get API key

CVE-2020-36213

Update unsound DrainFilter and RString::retain

7.5 HighFix available

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

1.37%Up 1.0 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
CVE-2020-36213
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Updated
2026-11-02
CVE List No score

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
CVE-2020-36213
Updated
2026-11-02
EUVDEUVD-2021-1920 No score

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
EUVD-2021-1920
Updated
2026-11-03
GitHub AdvisoriesGHSA-wqxc-qrq4-w5v4 7.5

Update unsound DrainFilter and RString::retain

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
GHSA-wqxc-qrq4-w5v4
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-172
Updated
2026-11-02
OSVCVE-2020-36212 7.5

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. DrainFilter lacks soundness because of a double drop.

Record
CVE-2020-36212
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSV 7.5

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
CVE-2020-36213
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGHSA-vq23-5h4f-vwpv 7.5

Update unsound DrainFilter and RString::retain

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. DrainFilter lacks soundness because of a double drop.

Record
GHSA-vq23-5h4f-vwpv
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-672
Updated
2026-11-02
OSVGHSA-wqxc-qrq4-w5v4 7.5

Update unsound DrainFilter and RString::retain

An issue was discovered in the abi_stable crate before 0.9.1 for Rust. A retain call can create an invalid UTF-8 string, violating soundness.

Record
GHSA-wqxc-qrq4-w5v4
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-172
Updated
2026-11-02
OSVRUSTSEC-2020-0105 7.5

Update unsound DrainFilter and RString::retain

Affected versions of this crate contained code from the Rust standard library that contained soundness bugs rust-lang/rust#60977 (double drop) & rust-lang/rust#78498 (create invalid utf-8 string).

The flaw was corrected in v0.9.1 by making a similar fix to the one made in the Rust standard library.

Record
RUSTSEC-2020-0105
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
abi_stable
crates.io
before 0.9.1
0.9.1
abi_stable
crates.io
From an advisory covering 2 CVEs
before 0.9.1
0.9.1
abi_stable
crates.io
From an advisory covering 2 CVEs
0.0.0-0 up to 0.9.1
0.9.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2020-36213 is a high vulnerability (CVSS 7.5) in Abi Stable Project Stable, published December 21, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.37%, the 72nd percentile. Fixed in abi_stable 0.9.1.

References

MoveEnter Open