This project contains known security vulnerabilities. Find detailed information at the bottom.

Crate librespot-core

Dependencies

(47 total, 6 outdated, 1 insecure, 2 possibly insecure)

CrateRequiredLatestStatus
 aes^0.80.8.4up to date
 base64^0.220.22.1up to date
 byteorder^1.41.5.0up to date
 bytes^11.10.1up to date
 data-encoding^2.52.9.0up to date
 form_urlencoded^1.01.2.1up to date
 futures-core^0.30.3.31up to date
 futures-util^0.30.3.31up to date
 governor^0.60.10.0out of date
 hmac^0.120.12.1up to date
 http^1.01.3.1up to date
 http-body-util^0.1.10.1.3up to date
 httparse^1.71.10.1up to date
 hyper^1.31.6.0up to date
 hyper-proxy2^0.10.1.0up to date
 hyper-rustls^0.27.20.27.7up to date
 hyper-util^0.10.1.14up to date
 librespot-oauth^0.6.00.6.0up to date
 librespot-protocol^0.6.00.6.0up to date
 log^0.40.4.27up to date
 nonzero_ext^0.30.3.0up to date
 num-bigint^0.40.4.6up to date
 num-derive^0.40.4.2up to date
 num-integer^0.10.1.46up to date
 num-traits^0.20.2.19up to date
 once_cell^11.21.3up to date
 parking_lot^0.120.12.4up to date
 pbkdf2^0.120.12.2up to date
 pin-project-lite^0.20.2.16up to date
 priority-queue^2.02.5.0up to date
 protobuf ⚠️^3.53.7.2maybe insecure
 quick-xml^0.36.10.38.0out of date
 rand^0.80.9.1out of date
 rsa ⚠️^0.9.20.9.8insecure
 serde^1.01.0.219up to date
 serde_json^1.01.0.140up to date
 sha1^0.100.10.6up to date
 shannon^0.20.2.0up to date
 sysinfo^0.31.30.35.2out of date
 thiserror^1.02.0.12out of date
 time^0.30.3.41up to date
 tokio ⚠️^11.46.1maybe insecure
 tokio-stream^0.10.1.17up to date
 tokio-tungstenite^0.240.27.0out of date
 tokio-util^0.70.7.15up to date
 url^22.5.4up to date
 uuid^11.17.0up to date

Dev dependencies

(1 total, 1 possibly insecure)

CrateRequiredLatestStatus
 tokio ⚠️^11.46.1maybe insecure

Security Vulnerabilities

tokio: reject_remote_clients Configuration corruption

RUSTSEC-2023-0001

On Windows, configuring a named pipe server with pipe_mode will force ServerOptions::reject_remote_clients as false.

This drops any intended explicit configuration for the reject_remote_clients that may have been set as true previously.

The default setting of reject_remote_clients is normally true meaning the default is also overridden as false.

Workarounds

Ensure that pipe_mode is set first after initializing a ServerOptions. For example:

let mut opts = ServerOptions::new();
opts.pipe_mode(PipeMode::Message);
opts.reject_remote_clients(true);

rsa: Marvin Attack: potential key recovery through timing sidechannels

RUSTSEC-2023-0071

Impact

Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key.

Patches

No patch is yet available, however work is underway to migrate to a fully constant-time implementation.

Workarounds

The only currently available workaround is to avoid using the rsa crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer is fine.

References

This vulnerability was discovered as part of the "Marvin Attack", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.

protobuf: Crash due to uncontrolled recursion in protobuf crate

RUSTSEC-2024-0437

Affected version of this crate did not properly parse unknown fields when parsing a user-supplied input.

This allows an attacker to cause a stack overflow when parsing the mssage on untrusted data.