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

Crate yup-oauth2

Dependencies

(19 total, 8 outdated, 1 insecure)

CrateRequiredLatestStatus
 anyhow^1.0.381.0.104up to date
 async-trait^0.10.1.92up to date
 base64^0.13.00.23.1out of date
 futures^0.30.3.34up to date
 http^0.21.5.0out of date
 hyper^0.141.11.1out of date
 hyper-rustls^0.230.27.10out of date
 hyper-tls^0.5.00.6.0out of date
 itertools^0.10.00.15.0out of date
 log^0.40.4.34up to date
 percent-encoding^22.3.2up to date
 rustls ⚠️^0.20.40.23.45insecure
 rustls-pemfile^0.32.2.0out of date
 seahash^44.1.0up to date
 serde^1.01.0.229up to date
 serde_json^1.01.0.151up to date
 time^0.3.70.3.55up to date
 tokio^1.01.53.1up to date
 url^22.5.8up to date

Dev dependencies

(5 total, 4 outdated, 1 insecure)

CrateRequiredLatestStatus
 env_logger^0.70.11.11out of date
 httptest^0.140.16.4out of date
 hyper-rustls^0.230.27.10out of date
 tempfile^3.13.27.0up to date
 webbrowser ⚠️^0.51.2.4insecure

Security Vulnerabilities

rustls: `rustls::ConnectionCommon::complete_io` could fall into an infinite loop based on network input

RUSTSEC-2024-0336

If a close_notify alert is received during a handshake, complete_io does not terminate.

Callers which do not call complete_io are not affected.

rustls-tokio and rustls-ffi do not call complete_io and are not affected.

rustls::Stream and rustls::StreamOwned types use complete_io and are affected.

webbrowser: Unix `BROWSER` handling allows browser argument injection

RUSTSEC-2026-0257

On Unix platforms handled by src/unix.rs, affected versions substitute the caller-supplied URL into the BROWSER environment-variable template before tokenizing the resulting string with split_ascii_whitespace(). If an application passes an attacker-controlled non-HTTP(S) URL whose parsed form retains spaces and the effective BROWSER template contains %s, text that should remain within one URL argument becomes additional browser arguments.

The issue was reproduced with Chromium by injecting --remote-debugging-port, which exposed a local DevTools endpoint, and --proxy-server, which redirected browser traffic through an attacker-controlled proxy. The available arguments and resulting impact depend on the browser launched by the affected application.

Version 1.2.2 fixes the issue by tokenizing the BROWSER template before substituting the URL, preserving the URL as part of a single argument. Users should upgrade to version 1.2.2 or later. Applications that only need HTTP(S) URLs can also enable the crate's hardened feature as defense in depth.

This issue was reported by @dywzju09-blip.