CVE-2020-35874
Use after free in internment
CVE-2020-35874 is a high vulnerability (CVSS 8.1) in Internment Project Internment, published May 28, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.97%, the 62nd percentile. Fixed in internment 0.4.0.
- Severity
- 8.1 HighCVSS 3.1, NVD
- Exploit chance
- 0.97%EPSS, 62nd percentile
- Exploitation
- None knownNot on CISA’s or ENISA’s lists
- Fixed in
0.4.0internment
Description
An issue was discovered in the internment crate through 2020-05-28 for Rust. ArcIntern::drop has a race condition and resultant use-after-free.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
internmentcrates.io | 0.3.12 up to 0.4.0 | 0.4.0 |
What each source reports
NVD Score used 8.1
An issue was discovered in the internment crate through 2020-05-28 for Rust. ArcIntern::drop has a race condition and resultant use-after-free.
- Record
CVE-2020-35874- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.8 Medium
AV:N/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-362, CWE-416
- Updated
- 2026-11-02
CVE ListNo score
An issue was discovered in the internment crate through 2020-05-28 for Rust. ArcIntern::drop has a race condition and resultant use-after-free.
- Record
CVE-2020-35874- Updated
- 2026-11-02
EUVDEUVD-2021-1652No score
An issue was discovered in the internment crate through 2020-05-28 for Rust. ArcIntern::drop has a race condition and resultant use-after-free.
- Record
EUVD-2021-1652- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-96w3-p368-4h8c 8.1
Use after free in internment
ArcIntern::drop has a race condition where it can release memory which is about to get another user. The new user will get a reference to freed memory.
This was fixed by serializing access to an interned object while it is being deallocated.
Versions prior to 0.3.12 used stronger locking which avoided the problem.
- Record
GHSA-96w3-p368-4h8c- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-362
- Updated
- 2026-11-02
OSVGHSA-96w3-p368-4h8c 8.1
Use after free in internment
ArcIntern::drop has a race condition where it can release memory which is about to get another user. The new user will get a reference to freed memory.
This was fixed by serializing access to an interned object while it is being deallocated.
Versions prior to 0.3.12 used stronger locking which avoided the problem.
- Record
GHSA-96w3-p368-4h8c- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-362
- Updated
- 2026-11-02
OSVRUSTSEC-2020-0017 8.1
Use after free in ArcIntern::drop
ArcIntern::drop has a race condition where it can release memory
which is about to get another user. The new user will get a reference
to freed memory.
This was fixed by serializing access to an interned object while it is being deallocated.
Versions prior to 0.3.12 used stronger locking which avoided the problem.
- Record
RUSTSEC-2020-0017- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.