A flaw was found in rsync in versions since 3.2.0pre1. Rsync improperly validates certificate with host mismatch vulnerability. A remote, unauthenticated attacker could exploit the flaw by performing a man-in-the-middle attack using a valid certificate for another hostname which could compromise confidentiality and integrity of data transmitted using rsync-ssl. The highest threat from this vulnerability is to data confidentiality and integrity. This flaw affects rsync versions before 3.2.4.
The product communicates with a host that provides a certificate, but the product does not properly ensure that the certificate is actually associated with that host.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Rsync | Samba | 3.2.1 (including) | 3.2.4 (excluding) |
Rsync | Samba | 3.2.0 (including) | 3.2.0 (including) |
Rsync | Samba | 3.2.0-pre1 (including) | 3.2.0-pre1 (including) |
Rsync | Samba | 3.2.0-pre2 (including) | 3.2.0-pre2 (including) |
Rsync | Samba | 3.2.0-pre3 (including) | 3.2.0-pre3 (including) |
Rsync | Ubuntu | trusty | * |
Rsync | Ubuntu | upstream | * |
Even if a certificate is well-formed, signed, and follows the chain of trust, it may simply be a valid certificate for a different site than the site that the product is interacting with. If the certificate’s host-specific data is not properly checked - such as the Common Name (CN) in the Subject or the Subject Alternative Name (SAN) extension of an X.509 certificate - it may be possible for a redirection or spoofing attack to allow a malicious host with a valid certificate to provide data, impersonating a trusted host. In order to ensure data integrity, the certificate must be valid and it must pertain to the site that is being accessed. Even if the product attempts to check the hostname, it is still possible to incorrectly check the hostname. For example, attackers could create a certificate with a name that begins with a trusted name followed by a NUL byte, which could cause some string-based comparisons to only examine the portion that contains the trusted name. This weakness can occur even when the product uses Certificate Pinning, if the product does not verify the hostname at the time a certificate is pinned.