CVE-2020-25575
Type confusion if __private_get_type_id__ is overriden
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
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
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
CVE-2020-25575- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-843
- Updated
- 2026-11-02
CVE List
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
CVE-2020-25575- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-843
- Updated
- 2026-11-02
EUVDEUVD-2022-6084
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
EUVD-2022-6084- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-jq66-xh47-j9f3
9.8
Type confusion if __private_get_type_id__ is overriden
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010.
- Record
GHSA-jq66-xh47-j9f3- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-843
- Updated
- 2026-11-02
OSVCVE-2019-25010
9.8
An issue was discovered in the failure crate through 2019-11-13 for Rust. Type confusion can occur when private_get_type_id is overridden.
- Record
CVE-2019-25010- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSV
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
CVE-2020-25575- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 6 moreShow less
OSVDEBIAN-CVE-2020-25575
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
DEBIAN-CVE-2020-25575- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-jq66-xh47-j9f3
9.8
Type confusion if __private_get_type_id__ is overriden
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010.
- Record
GHSA-jq66-xh47-j9f3- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-843
- Updated
- 2026-11-02
OSVGHSA-r98r-j25q-rmpr
9.8
Rust Failure Crate Vulnerable to Type confusion
Safe Rust code can implement malfunctioning __private_get_type_id__ and cause type confusion when downcasting, which is an undefined behavior.
Users who derive Fail trait are not affected.
- Record
GHSA-r98r-j25q-rmpr- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-843
- Updated
- 2026-11-02
OSVRUSTSEC-2019-0036
9.8
Type confusion if __private_get_type_id__ is overridden
Safe Rust code can implement malfunctioning __private_get_type_id__ and cause
type confusion when downcasting, which is an undefined behavior.
Users who derive Fail trait are not affected.
- Record
RUSTSEC-2019-0036- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVRUSTSEC-2020-0036
9.8
failure is officially deprecated/unmaintained
The failure crate is officially end-of-life: it has been marked as deprecated
by the former maintainer, who has announced that there will be no updates or
maintenance work on it going forward.
The following are some suggested actively developed alternatives to switch to:
- Record
RUSTSEC-2020-0036- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2020-25575
9.8
An issue was discovered in the failure crate through 0.1.5 for Rust. It may introduce "compatibility hazards" in some applications, and has a type confusion flaw when downcasting. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: This may overlap CVE-2019-25010
- Record
UBUNTU-CVE-2020-25575- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
failurecrates.io |
through 0.1.8 | None known |
rust-failureDebian:12 |
All versions, plus listed versions 0.1.7-1 |
None known |
failurecrates.io From an advisory covering 2 CVEs |
through 0.1.8 | None known |
failurecrates.io From an advisory covering 2 CVEs |
0.0.0-0 and later | None known |
rust-failureUbuntu:20.04:LTS |
All versions, plus listed versions 0.1.5-1build1 |
None known |
rust-failureUbuntu:22.04:LTS |
All versions, plus listed versions 0.1.7-1 |
None known |
rust-failureUbuntu:24.04:LTS |
All versions, plus listed versions 0.1.7-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2020-25575 is a critical vulnerability (CVSS 9.8) in Failure Project Failure, published November 13, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.93%, the 87th percentile. No source names a fixed version.
References
github.com/rust-lang-nursery/failure/issues/336
rustsec.org/advisories/RUSTSEC-2020-0036.html
boats.gitlab.io/blog/post/failure-to-fehler
nvd.nist.gov/vuln/detail/CVE-2020-25575
github.com/RustCrypto/hashes/pull/91
github.com/RustSec/advisory-db/blob/main/crates/failure/RUSTSEC-2019-0036.md
Show 9 moreShow less
rustsec.org/advisories/RUSTSEC-2019-0036.html
github.com/advisories/GHSA-jq66-xh47-j9f3
security-tracker.debian.org/tracker/CVE-2020-25575
nvd.nist.gov/vuln/detail/CVE-2019-25010
github.com/rust-lang-nursery/failure
crates.io/crates/failure
github.com/rust-lang-nursery/failure/pull/347
ubuntu.com/security/CVE-2020-25575
cve.org/CVERecord?id=CVE-2020-25575