CVE-2016-10129
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote...
CVE-2016-10129 is a high vulnerability (CVSS 7.5) in Libgit2 Project Libgit2, published February 6, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.64%, the 89th percentile. Fixed in libgit2 0.25.1-r0.
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
CVE-2016-10129- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:N/I:N/A:P - Weakness
- CWE-476
- Updated
- 2026-11-02
CVE List No score
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
CVE-2016-10129- Updated
- 2026-11-02
EUVDEUVD-2016-1319 No score
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
EUVD-2016-1319- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-7gh2-q8m8-26r9
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote...
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
GHSA-7gh2-q8m8-26r9- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-476
- Updated
- 2026-11-02
OSVALPINE-CVE-2016-10129
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
ALPINE-CVE-2016-10129- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-03
OSV
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
CVE-2016-10129- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 5 moreShow less
OSVDEBIAN-CVE-2016-10129
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
DEBIAN-CVE-2016-10129- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2016-10129
7.5
The Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to cause a denial of service (NULL pointer dereference) via an empty packet line.
- Record
UBUNTU-CVE-2016-10129- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2017-0319 No score
Updated libgit2 packages fix security vulnerabilities
Read out-of-bounds in git_oid_nfmt (CVE-2016-8568).
DoS using a null pointer dereference in git_commit_message (CVE-2016-8569).
Insufficient sanitization allows some edge cases in the Git Smart Protocol which can lead to reading outside of a buffer (CVE-2016-10128, CVE-2016-10129).
- Record
MGASA-2017-0319- Updated
- 2026-11-02
OSVopenSUSE-SU-2017:0405-1 No score
Security update for libgit2
This update for libgit2 to version 0.24.6 fixes the following issues:
- CVE-2016-10130: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2017-5338: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2017-5339: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2016-10128: Additional sanitization prevent some edge cases in the Git Smart Protocol which can lead to reading outside of a buffer (bsc#1019036).
- CVE-2016-10129: Additional sanitization prevent some edge cases in the Git Smart Protocol which can lead to reading outside of a buffer (bsc#1019036).
- Record
openSUSE-SU-2017:0405-1- Updated
- 2026-11-02
OSVSUSE-SU-2017:0433-1 No score
Security update for libgit2
This update for libgit2 fixes the several issues.
These security issues were fixed:
- CVE-2016-10130: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2017-5338: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2017-5339: When using the custom certificate callback or when using pygit2 or git2go a attacker could have caused an invalid certificate to be accepted (bsc#1019037).
- CVE-2016-10128: Additional sanitization prevent some edge cases in the Git Smart Protocol which can lead to reading outside of a buffer (bsc#1019036).
- CVE-2016-10129: Additional sanitization prevent some edge cases in the Git Smart Protocol which can lead to reading outside of a buffer (bsc#1019036).
- Record
SUSE-SU-2017:0433-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
libgit2Alpine:v3.10 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.11 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.12 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.13 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.14 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.15 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.16 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.17 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.18 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.19 |
before 0.25.1-r0 | 0.25.1-r0 |
Show 25 moreShow less
| Package | Affected | Fixed |
|---|---|---|
libgit2Alpine:v3.20 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.21 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.22 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.23 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.24 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.4 |
before 0.24.6-r0 | 0.24.6-r0 |
libgit2Alpine:v3.5 |
before 0.24.6-r0 | 0.24.6-r0 |
libgit2Alpine:v3.6 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.7 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.8 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2Alpine:v3.9 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2-0.27Alpine:v3.10 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2-1.0Alpine:v3.13 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2-1.0Alpine:v3.14 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2-1.1Alpine:v3.15 |
before 0.25.1-r0 | 0.25.1-r0 |
libgit2-1.1Alpine:v3.16 |
before 0.25.1-r0 | 0.25.1-r0 |
cargoDebian:12 |
before 0.17.0-1 | 0.17.0-1 |
libgit2Debian:12 |
before 0.25.1+really0.24.6-1 | 0.25.1+really0.24.6-1 |
libgit2Debian:13 |
before 0.25.1+really0.24.6-1 | 0.25.1+really0.24.6-1 |
libgit2Debian:14 |
before 0.25.1+really0.24.6-1 | 0.25.1+really0.24.6-1 |
libgit2Mageia:5 |
before 0.21.1-3.2.mga5 | 0.21.1-3.2.mga5 |
libgit2SUSE:Linux Enterprise Software Development Kit 12 SP2 |
before 0.24.1-6.1 | 0.24.1-6.1 |
libgit2Ubuntu:Pro:14.04:LTS |
before 0.19.0-2ubuntu0.4+esm2, plus listed versions 0.19.0-20.19.0-2ubuntu0.40.19.0-2ubuntu0.4+esm1 |
0.19.0-2ubuntu0.4+esm2 |
libgit2Ubuntu:Pro:16.04:LTS |
before 0.24.1-2ubuntu0.2+esm3, plus listed versions 0.22.2-20.23.1-10.24.1-20.24.1-2ubuntu0.20.24.1-2ubuntu0.2+esm10.24.1-2ubuntu0.2+esm2 |
0.24.1-2ubuntu0.2+esm3 |
libgit2SUSE:Package Hub 12 SP1 |
before 0.24.6-10.1 | 0.24.6-10.1 |
History
| When | Changed | Sources |
|---|---|---|
| 2026-11-03 | affected | OSV |
| 2026-11-03 | aliases | EUVD |
| 2026-11-02 | created | CVE List, GitHub Advisories, NVD, OSV |
References
libgit2.github.com/security
github.com/libgit2/libgit2/commit/2fdef641fd0dd2828bd948234ae86de75221a11a
github.com/libgit2/libgit2/commit/84d30d569ada986f3eef527cbdb932643c2dd037
openwall.com/lists/oss-security/2017/01/10/5
openwall.com/lists/oss-security/2017/01/11/6
lists.opensuse.org/opensuse-updates/2017-02/msg00030.html
Show 21 moreShow less
lists.opensuse.org/opensuse-updates/2017-02/msg00036.html
securityfocus.com/bid/95339
lists.opensuse.org/opensuse-updates/2017-02/msg00072.html
nvd.nist.gov/vuln/detail/CVE-2016-10129
github.com/advisories/GHSA-7gh2-q8m8-26r9
security.alpinelinux.org/vuln/CVE-2016-10129
security-tracker.debian.org/tracker/CVE-2016-10129
advisories.mageia.org/MGASA-2017-0319.html
bugs.mageia.org/show_bug.cgi?id=19792
lists.fedoraproject.org/archives/list/[email protected]/thread/4E77DG5KGQ7L34U75QY7O6NIPKZNQHQJ
suse.com/support/update/announcement/2017/suse-su-20170433-1
bugzilla.suse.com/1019036
bugzilla.suse.com/1019037
suse.com/security/cve/CVE-2016-10128
suse.com/security/cve/CVE-2016-10129
suse.com/security/cve/CVE-2016-10130
suse.com/security/cve/CVE-2017-5338
suse.com/security/cve/CVE-2017-5339
ubuntu.com/security/CVE-2016-10129
cve.org/CVERecord?id=CVE-2016-10129
ubuntu.com/security/notices/USN-8628-1