Vulnerabilities / CVE-2024-24577

critical

CVE-2024-24577

libgit2: arbitrary code execution due to heap corruption in git_index_add

Published Modified CWE 122, 119
In the Trivy database since at least 24 Oct 2026, 07:11 UTCWhen it arrived before that build is not recorded.

Severity by source

NVD9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Red Hat9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Julia9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Trivy's own label is CRITICAL. Rated critical by NVD, CBL-Mariner, Julia. Rated lower by Red Hat (high), Amazon (high), Ubuntu (medium).

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. Using well-crafted inputs to `git_index_add` can cause heap corruption that could be leveraged for arbitrary code execution. There is an issue in the `has_dir_name` function in `src/libgit2/index.c`, which frees an entry that should not be freed. The freed entry is later used and overwritten with potentially bad actor-controlled data leading to controlled heap corruption. Depending on the application that uses libgit2, this could lead to arbitrary code execution. This issue has been patched in version 1.6.5 and 1.7.2.

Affected packages and fixed versions

SourcePackageFixed in
CBL-Mariner 2.0libgit20:1.6.5-1.cm2
julia::Julia Ecosystem Security AdvisoriesLibGit2_jll1.7.2+0
alpine 3.19libgit21.7.2-r0
alpine 3.20eza, libgit20.18.2-r0 and 1 more
alpine 3.21eza, libgit20.18.2-r0 and 1 more
alpine 3.22eza, libgit20.18.2-r0 and 1 more
alpine 3.23eza, libgit20.18.2-r0 and 1 more
alpine 3.24eza, libgit20.18.2-r0 and 1 more
alpine edgeeza, libgit20.18.2-r0 and 1 more
amazon linux 1cargo, clippy, rust and 9 more1.68.2-1.66.amzn1
amazon linux 2cargo, clippy, rust and 10 more1.68.2-1.amzn2.0.6
amazon linux 2023cargo, cargo-debuginfo, clippy and 21 more1.68.2-1.amzn2023.0.5 and 1 more
Show all 95 entries from 27 sources
SourcePackageFixed in
CBL-Mariner 2.0libgit20:1.6.5-1.cm2
julia::Julia Ecosystem Security AdvisoriesLibGit2_jll1.7.2+0
alpine 3.19libgit21.7.2-r0
alpine 3.20eza0.18.2-r0
alpine 3.20libgit21.7.2-r0
alpine 3.21eza0.18.2-r0
alpine 3.21libgit21.7.2-r0
alpine 3.22eza0.18.2-r0
alpine 3.22libgit21.7.2-r0
alpine 3.23eza0.18.2-r0
alpine 3.23libgit21.7.2-r0
alpine 3.24eza0.18.2-r0
alpine 3.24libgit21.7.2-r0
alpine edgeeza0.18.2-r0
alpine edgelibgit21.7.2-r0
amazon linux 1cargo1.68.2-1.66.amzn1
amazon linux 1clippy1.68.2-1.66.amzn1
amazon linux 1rust1.68.2-1.66.amzn1
amazon linux 1rust-analysis1.68.2-1.66.amzn1
amazon linux 1rust-analyzer1.68.2-1.66.amzn1
amazon linux 1rust-debugger-common1.68.2-1.66.amzn1
amazon linux 1rust-doc1.68.2-1.66.amzn1
amazon linux 1rust-gdb1.68.2-1.66.amzn1
amazon linux 1rust-lldb1.68.2-1.66.amzn1
amazon linux 1rust-src1.68.2-1.66.amzn1
amazon linux 1rust-std-static1.68.2-1.66.amzn1
amazon linux 1rustfmt1.68.2-1.66.amzn1
amazon linux 2cargo1.68.2-1.amzn2.0.6
amazon linux 2clippy1.68.2-1.amzn2.0.6
amazon linux 2rust1.68.2-1.amzn2.0.6
amazon linux 2rust-analysis1.68.2-1.amzn2.0.6
amazon linux 2rust-analyzer1.68.2-1.amzn2.0.6
amazon linux 2rust-debugger-common1.68.2-1.amzn2.0.6
amazon linux 2rust-debuginfo1.68.2-1.amzn2.0.6
amazon linux 2rust-doc1.68.2-1.amzn2.0.6
amazon linux 2rust-gdb1.68.2-1.amzn2.0.6
amazon linux 2rust-src1.68.2-1.amzn2.0.6
amazon linux 2rust-std-static1.68.2-1.amzn2.0.6
amazon linux 2rust-toolset1.68.2-1.amzn2.0.6
amazon linux 2rustfmt1.68.2-1.amzn2.0.6
amazon linux 2023cargo1.68.2-1.amzn2023.0.5
amazon linux 2023cargo-debuginfo1.68.2-1.amzn2023.0.5
amazon linux 2023clippy1.68.2-1.amzn2023.0.5
amazon linux 2023clippy-debuginfo1.68.2-1.amzn2023.0.5
amazon linux 2023libgit21.6.4-115.amzn2023.0.2
amazon linux 2023libgit2-debuginfo1.6.4-115.amzn2023.0.2
amazon linux 2023libgit2-debugsource1.6.4-115.amzn2023.0.2
amazon linux 2023libgit2-devel1.6.4-115.amzn2023.0.2
amazon linux 2023rust1.68.2-1.amzn2023.0.5
amazon linux 2023rust-analysis1.68.2-1.amzn2023.0.5
amazon linux 2023rust-analyzer1.68.2-1.amzn2023.0.5
amazon linux 2023rust-analyzer-debuginfo1.68.2-1.amzn2023.0.5
amazon linux 2023rust-debugger-common1.68.2-1.amzn2023.0.5
amazon linux 2023rust-debuginfo1.68.2-1.amzn2023.0.5
amazon linux 2023rust-debugsource1.68.2-1.amzn2023.0.5
amazon linux 2023rust-doc1.68.2-1.amzn2023.0.5
amazon linux 2023rust-gdb1.68.2-1.amzn2023.0.5
amazon linux 2023rust-lldb1.68.2-1.amzn2023.0.5
amazon linux 2023rust-src1.68.2-1.amzn2023.0.5
amazon linux 2023rust-std-static1.68.2-1.amzn2023.0.5
amazon linux 2023rust-std-static-wasm32-unknown-unknown1.68.2-1.amzn2023.0.5
amazon linux 2023rust-std-static-wasm32-wasi1.68.2-1.amzn2023.0.5
amazon linux 2023rustfmt1.68.2-1.amzn2023.0.5
amazon linux 2023rustfmt-debuginfo1.68.2-1.amzn2023.0.5
chainguardlibgit21.7.2-r0
chainguardlibgit2-1.51.7.2-r0
debian 10libgit20.27.7+dfsg.1-0.2+deb10u2
debian 11libgit21.1.0+dfsg.1-4+deb11u2
debian 12libgit21.5.1+ds-1+deb12u1
debian 13libgit21.7.2+ds-1
debian 14libgit21.7.2+ds-1
echolibgit21.5.1+ds-1+deb12u1
rapidfort amazon linux 2023cargo1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023clippy1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023libgit21.6.4-115.amzn2023.0.2
rapidfort amazon linux 2023libgit2-devel1.6.4-115.amzn2023.0.2
rapidfort amazon linux 2023rust1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-analysis1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-analyzer1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-debugger-common1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-doc1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-gdb1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-lldb1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-src1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-std-static1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-std-static-wasm32-unknown-unknown1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rust-std-static-wasm32-wasi1.68.2-1.amzn2023.0.5
rapidfort amazon linux 2023rustfmt1.68.2-1.amzn2023.0.5
ubuntu 16.04-ESMlibgit20.24.1-2ubuntu0.2+esm2
ubuntu 18.04-ESMlibgit20.26.0+dfsg.1-1.1ubuntu0.2+esm1
ubuntu 20.04libgit20.28.4+dfsg.1-2ubuntu0.1
ubuntu 20.04-ESMlibgit20.28.4+dfsg.1-2ubuntu0.1
ubuntu 22.04libgit21.1.0+dfsg.1-4.1ubuntu0.1
ubuntu 23.10libgit21.5.1+ds-1ubuntu1.1
wolfilibgit21.7.2-r0

References

All 13 references

Vulnerability data compiled from the Trivy vulnerability database (trivy-db, Aqua Security, Apache License 2.0), which aggregates third-party advisories. CVE records are published by The MITRE Corporation under the CVE Terms of Use; CVE is a trademark of MITRE. This product uses data from the NVD API but is not endorsed or certified by the NVD. Severity, titles and advisory data from the GitHub Advisory Database (CC BY 4.0), Red Hat security data (CC BY 4.0) and the other sources linked on each entry. Entries may be summarised or re-formatted; the linked original is the authoritative record.