CyberRota Analysis
AI-GeneratedLibgit2 versions prior to 1.8.6 and 1.9.5 are vulnerable to a heap out-of-bounds access due to improper validation of the pkt-line capability buffer, which can be exploited by a malicious Git server to crash clients during the refs-advertisement packet exchange. This vulnerability poses a high risk to applications that integrate Git functionality using libgit2, particularly those relying on HTTP, HTTPS, SSH, or the Git protocol. Organizations utilizing affected versions should prioritize upgrading to the patched releases to mitigate potential disruptions and security risks.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
libgit2 is a portable C implementation of the Git core methods provided as a linkable library with a solid API, allowing to build Git functionality into your application. Prior to 1.8.6 and 1.9.5, libgit2 performs a fixed-size strncmp in set_data in src/libgit2/transports/smart_pkt.c without first verifying that the smart-protocol pkt-line capability buffer contains 14 bytes. A malicious Git server can make bytes after the pkt-line complete object-format=, causing format_str to advance beyond the pkt-line and the following memchr length calculation to underflow. The resulting heap out-of-bounds walk can crash a client during the first refs-advertisement packet over HTTP, HTTPS, SSH, or the Git protocol. This issue is fixed in versions 1.8.6 and 1.9.5.