GHSA-j57r-4qw6-58r3 json
rusty_paseto vulnerable to private key extraction due to ed25519-dalek dependency
published 3y ago modified 3y ago
- 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
## Impact
The vulnerability, known as RUSTSEC-2022-0093, impacts the `ed25519-dalek` crate, which is a dependency of the `rusty-paseto` crate. This issue arises from a "Double Public Key Signing Function Oracle Attack" affecting versions of `ed25519-dalek` prior to v2.0. These versions expose an unsafe API for serializing and deserializing 64-byte keypairs that include both private and public keys, creating potential for certain attacks. `d25519-dalek` users utilizing these serialization and deserialization functions directly could potentially be impacted.
## Patches
The vulnerability within the `ed25519-dalek` crate has been addressed in version 2.0. `rusty-paseto` has addressed it in release v0.6.0.
## Workarounds
Users are recommended to upgrade to v0.6.0 of `rusty-paseto`. However, users should still ensure that their key serialization and deserialization practices are secure and avoid any practices that could lead to key exposure.
## References
More information about RUSTSEC-2022-0093 can be found in the [RustSec Advisory Database](https://rustsec.org/advisories/RUSTSEC-2022-0093.html). Updates and details regarding the upcoming release of `rusty-paseto` will be documented in the project's [releases](https://github.com/your-repo/rusty-paseto/releases) and [changelog](https://github.com/your-repo/rusty-paseto/blob/main/CHANGELOG.md). This issue was first reported by Dependabot on 2023-08-15. The source was reviewed by @rrrodzilla at that time and a determination was made that the vulnerability low harm to existing users due to the strongly typed nature of keys provided by the rusty-paseto API. @techport-om reported the vulnerability to the repository by discovering during a `cargo-audit` run on 2023-11-05 and opened [issue 28](https://github.com/rrrodzilla/rusty_paseto/issues/28). This advisory was created at that time to notify existing users.
Patch / fix
- crates.io rusty-paseto 0.6.0
Is GHSA-j57r-4qw6-58r3 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 | rusty-paseto | <0.6.0 |
0.6.0 |
References
-
github.com
/rrrodzilla/rusty_paseto/commit/42718c1b757c1dfabb80621f2f48b8268f7fa24e
web
-
github.com
/rrrodzilla/rusty_paseto/security/advisories/GHSA-j57r-4qw6-58r3
web
-
github.com
/rrrodzilla/rusty_paseto
package
-
github.com
/rrrodzilla/rusty_paseto/releases/tag/v0.6.0
web
-
rustsec.org
/advisories/RUSTSEC-2022-0093.html
web
Sources
- GitHub Advisory GHSA-j57r-4qw6-58r3
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.