CVE-2023-22742: libgit2 fails to verify SSH keys by default
libgit2 is a cross-platform, linkable library implementation of Git. When using an SSH remote with the optional libssh2 backend, libgit2 does not perform certificate checking by default. Prior versions of libgit2 require the caller to set the certificatecheck field of libgit2's gitremotecallbacks structure - if a certificate check callback is not set, libgit2 does not perform any certificate checking. This means that by default - without configuring a certificate check callback, clients will not perform validation on the server SSH keys and may be subject to a man-in-the-middle attack. Users are encouraged to upgrade to v1.4.5 or v1.5.1. Users unable to upgrade should ensure that all relevant certificates are manually checked.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is CVE-2023-22742?
CVE-2023-22742 is a vulnerability in libgit2, a cross-platform linkable library implementation of Git.
How does CVE-2023-22742 affect libgit2?
CVE-2023-22742 affects libgit2 by not performing certificate checking when using an SSH remote with the optional libssh2 backend.
What is the severity of CVE-2023-22742?
CVE-2023-22742 has a severity level of medium.
How can I fix CVE-2023-22742?
To fix CVE-2023-22742, update libgit2 to version 1.5.0 or later, or apply the appropriate patches.
What is CWE-347?
CWE-347 is a weakness that describes improper validation of certificate with host mismatch.