Read the docs
TI-2026-38646 Aliases CVE-2026-53586

libgit2: HTTP transport can leak credentials to an offsite redirect target

Priority LOW 29CWE-200Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
Information disclosure, Spoofing
Confidentiality · integrity · availability
High · None · None
Fix status
Partial Red Hat: 1 fixed, 4 without a fix

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-200 and CWE-601.

Summary

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, the built-in HTTP transport in src/libgit2/transports/http.c follows an offsite initial redirect, and handle_remote_auth and handle_auth pass transport->owner->url instead of transport->server.url to the credential callback when the redirected host returns 401 Unauthorized. A callback that scopes credentials to the original trusted URL can therefore return GIT_CREDENTIAL_USERPASS_PLAINTEXT credentials that libgit2 stores in transport->server.cred and sends as an Authorization header to the redirected host. An attacker who controls a trusted Git host or an open redirect on that host can disclose HTTP Basic credentials, personal access tokens, or equivalent credentials. This issue is fixed in versions 1.8.6 and 1.9.5.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00276 20th percentileScored 2026-11-07
Fix Partial libgit2 (libgit2): 1.8.6, 1.9.5Red Hat: 1 advisoryRed Hat: 1 fixed, 4 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
libgit2libgit2before 1.8.6; 1.9.0 to before 1.9.51.8.6, 1.9.5Patch availableCNA
  • libgit2 Vendorlibgit2 Affected before 1.8.6; 1.9.0 to before 1.9.5 Fixed in 1.8.6, 1.9.5 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:libgit2:libgit2:*:*:*:*:*:*:*:*——libgit2
  • cpe:2.3:a:libgit2:libgit2:*:*:*:*:*:*:*:* Versions — — ·libgit2

Remediation

  • Fix · CNA libgit2 (libgit2) Fixed in 1.8.6, 1.9.5

Red Hat 1 advisory

  • RHSA-2026:59361 Released 2026-08-25 · Red Hat rating Important
    Red Hat Hardened Images RPMs bug fix and enhancement update
    • Red Hat Hardened Images libgit2-1.9.7-1.hum1@aarch64, libgit2-1.9.7-1.hum1@src, libgit2-1.9.7-1.hum1@x86_64 +2

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux 10AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 8AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 9AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux AI (RHEL AI) 3AffectedNo fix yet: Fix deferred
Red Hat Hardened ImagesFixed RHSA-2026:59361

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-53586

References

  • TI-2014-07619 Git before 1.8.5.6, 1.9.x before 1.9.5, 2.0.x before 2.0.5, 2.1.x before 2.1.4, and 2.2.x… CVSS 3.1CRITICAL 9.8
  • TI-2026-38647 libgit2 - Unauthenticated network-reachable heap out-of-bounds read in transports/smart_pkt.c:set_data CVSS 3.1HIGH 7.5
  • TI-2026-38643 libgit2: Inverted IP SubjectAltName Comparison in OpenSSL Backend CVSS 3.1MEDIUM 6.5
  • TI-2026-38645 libgit2: Unbounded Memory Allocation via Delta Object Result-Size Header CVSS 3.1MEDIUM 5.3
  • TI-2024-16198 libgit2 is vulnerable to arbitrary code execution due to heap corruption in `git_index_add` CVSS 3.1CRITICAL 9.8
  • TI-2020-09811 An issue was discovered in libgit2 before 0.28.4 and 0.9x before 0.99.0. CVSS 3.1CRITICAL 9.8
See all 16 →

Sources