GHSA-x8jh-xj3x-gx3c json
`fast-float` has multiple soundness issues
published 2y ago modified 2mo ago also RUSTSEC-2024-0379
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
`fast-float` contains multiple soundness issues:
1. [Undefined behavior when checking input length](https://github.com/aldanor/fast-float-rust/issues/28), which has been merged but no package [pubished](https://github.com/aldanor/fast-float-rust/issues/35). 1. [Many functions marked as safe with non-local safety guarantees](https://github.com/aldanor/fast-float-rust/issues/37)
The library is also unmaintained.
## Alternatives
For quickly parsing floating-point numbers third-party crates are generally no longer needed. A fast float parsing algorithm by the author of `lexical` has been [merged](https://github.com/rust-lang/rust/pull/86761) into libcore. When requiring direct parsing from bytes and/or partial parsers, the [`fast-float2`](https://crates.io/crates/fast-float2) fork of `fast-float` containing these security patches and reduces overall usage of unsafe.
Is GHSA-x8jh-xj3x-gx3c in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerAffected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | fast-float | <=0.2.0 >=0.0.0-0 |
no fix listed |
References
-
github.com
/aldanor/fast-float-rust/issues/28
web, report
-
github.com
/aldanor/fast-float-rust/issues/35
web, report
-
github.com
/aldanor/fast-float-rust/issues/37
web, report
-
github.com
/aldanor/fast-float-rust
package
-
rustsec.org
/advisories/RUSTSEC-2024-0379.html
web, advisory
-
crates.io
/crates/fast-float
package
Sources
- GitHub Advisory GHSA-x8jh-xj3x-gx3c
- OSV RUSTSEC-2024-0379
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.