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

Crate gremlin-client

Dependencies

(24 total, 7 outdated, 1 insecure)

CrateRequiredLatestStatus
 serde^1.01.0.229up to date
 serde_json^1.01.0.154up to date
 serde_derive^1.01.0.229up to date
 r2d2^0.8.30.8.10up to date
 chrono^0.40.4.45up to date
 lazy_static^1.3.01.5.1up to date
 base64^0.21.40.23.1out of date
 native-tls^0.2.30.2.18up to date
 tungstenite^0.20.10.30.0out of date
 async-tungstenite^0.230.35.0out of date
 async-std^1.4.01.13.2up to date
 async-trait^0.1.100.1.92up to date
 async-tls^0.120.13.0out of date
 tokio-native-tls^0.3.00.3.1up to date
 tokio-stream^0.1.20.1.19up to date
 rustls ⚠️^0.200.23.46insecure
 webpki^0.22.20.22.4up to date
 thiserror^1.0.202.0.21out of date
 mobc^0.80.9.0out of date
 url^2.1.02.5.8up to date
 futures^0.3.10.3.34up to date
 pin-project-lite^0.20.2.17up to date
 tokio^11.54.1up to date
 uuid^1.1.21.29.2up to date

Crate gremlin-tutorial

No external dependencies! 🙌

Crate gremlin-derive

Dependencies

(3 total, 1 outdated)

CrateRequiredLatestStatus
 proc-macro2^1.0.91.0.107up to date
 syn^1.0.163.0.10out of date
 quote^1.0.21.0.47up to date

Crate gremlin-cli

Dependencies

(10 total, 3 outdated)

CrateRequiredLatestStatus
 rustyline^6.2.019.0.0out of date
 smol^0.4.32.0.2out of date
 shellwords^1.1.01.1.0up to date
 futures^0.3.50.3.34up to date
 async-std^1.6.31.13.2up to date
 uuid^0.8.11.29.2out of date
 chrono^0.4.150.4.45up to date
 structopt^0.30.3.26up to date
 prettytable-rs^0.10.00.10.0up to date
 anyhow^1.0.321.0.104up to date

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.

rustls: Unauthenticated ServerHello can downgrade later connections to classical key exchange

RUSTSEC-2026-0349

The client recorded the server-selected key exchange group for each server name when processing the ServerHello, before the server was authenticated. This record is used to predict which key share to send in future ClientHellos to that server name.

A network attacker can answer one connection attempt with a ServerHello selecting X25519, and then close the connection. Later ClientHellos for that name carry only an X25519 key share, while supported_groups still lists X25519MLKEM768 first. If the genuine server accepts that share rather than sending a HelloRetryRequest for its preferred hybrid group, the handshake completes with classical-only key exchange and no error. This persists for as long as the entry stays in the client's session store.

The impact is loss of post-quantum confidentiality for affected connections ("harvest now, decrypt later"). There is no key compromise and no authentication bypass.

The following are not affected:

  • connections to servers which send a HelloRetryRequest for their preferred group,
  • clients with resumption disabled (as nothing is stored), and
  • other server names.

This behaviour is discussed in draft-ietf-tls-key-share-prediction, so the practical impact depends largely on server policy.