Headline
GHSA-22q8-ghmq-63vf: libgit2-sys affected by memory corruption, denial of service, and arbitrary code execution in libgit2
The libgit2 project fixed three security issues in the 1.7.2 release. These issues are:
- The
git_revparse_single
function can potentially enter an infinite loop on a well-crafted input, potentially causing a Denial of Service. This function is exposed in thegit2
crate via theRepository::revparse_single
method. - The
git_index_add
function may cause heap corruption and possibly lead to arbitrary code execution. This function is exposed in thegit2
crate via theIndex::add
method. - The smart transport negotiation may experience an out-of-bounds read when a remote server did not advertise capabilities.
The libgit2-sys
crate bundles libgit2, or optionally links to a system libgit2 library. In either case, versions of the libgit2 library less than 1.7.2 are vulnerable. The 0.16.2 release of libgit2-sys
bundles the fixed version of 1.7.2, and requires a system libgit2 version of at least 1.7.2.
It is recommended that all users upgrade.
Skip to content
Actions
Automate any workflow
Packages
Host and manage packages
Security
Find and fix vulnerabilities
Codespaces
Instant dev environments
Copilot
Write better code with AI
Code review
Manage code changes
Issues
Plan and track work
Discussions
Collaborate outside of code
GitHub Sponsors
Fund open source developers
* The ReadME Project
GitHub community articles
- Pricing
Provide feedback
Saved searches****Use saved searches to filter your results more quickly
Sign up
- GitHub Advisory Database
- GitHub Reviewed
- GHSA-22q8-ghmq-63vf
libgit2-sys affected by memory corruption, denial of service, and arbitrary code execution in libgit2
High severity GitHub Reviewed Published Feb 12, 2024 to the GitHub Advisory Database • Updated Feb 12, 2024
Package
cargo libgit2-sys (Rust)
Affected versions
< 0.16.2
Description
The libgit2 project fixed three security issues in the 1.7.2 release. These issues are:
- The git_revparse_single function can potentially enter an infinite loop on a well-crafted input, potentially causing a Denial of Service. This function is exposed in the git2 crate via the Repository::revparse_single method.
- The git_index_add function may cause heap corruption and possibly lead to arbitrary code execution. This function is exposed in the git2 crate via the Index::add method.
- The smart transport negotiation may experience an out-of-bounds read when a remote server did not advertise capabilities.
The libgit2-sys crate bundles libgit2, or optionally links to a system libgit2 library. In either case, versions of the libgit2 library less than 1.7.2 are vulnerable. The 0.16.2 release of libgit2-sys bundles the fixed version of 1.7.2, and requires a system libgit2 version of at least 1.7.2.
It is recommended that all users upgrade.
References
- rust-lang/git2-rs#1017
- rust-lang/git2-rs@9e57876
- https://rustsec.org/advisories/RUSTSEC-2024-0013.html
Published to the GitHub Advisory Database
Feb 12, 2024
Last updated
Feb 12, 2024