Headline
CVE-2016-10931: SSL/TLS MitM vulnerability due to insecure defaults › RustSec Advisory Database
An issue was discovered in the openssl crate before 0.9.0 for Rust. There is an SSL/TLS man-in-the-middle vulnerability because certificate verification is off by default and there is no API for hostname verification.
RUSTSEC-2016-0001
SSL/TLS MitM vulnerability due to insecure defaults
Reported
November 5, 2016
Issued
October 2, 2020 (last modified: October 19, 2021)
Package
openssl (crates.io)
Type
Vulnerability
Keywords
#ssl #mitm
Aliases
- CVE-2016-10931
Details
https://github.com/sfackler/rust-openssl/releases/tag/v0.9.0
CVSS Score
8.1 HIGH
CVSS Details
Attack vector
Network
Attack complexity
High
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS Vector
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Patched
=0.9.0
Description
All versions of rust-openssl prior to 0.9.0 contained numerous insecure defaults including off-by-default certificate verification and no API to perform hostname verification.
Unless configured correctly by a developer, these defaults could allow an attacker to perform man-in-the-middle attacks.
The problem was addressed in newer versions by enabling certificate verification by default and exposing APIs to perform hostname verification. Use the SslConnector and SslAcceptor types to take advantage of these new features (as opposed to the lower-level SslContext type).