Bug 2521751

Summary: CVE-2026-53586 rust-tokei: libgit2: Information disclosure via HTTP redirect allows credential leakage [epel-all]
Product: [Fedora] Fedora EPEL Reporter: Vladimir Vasilev <vvasilev>
Component: rust-tokeiAssignee: Ben Beasley <code>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: epel10CC: code, decathorpe, kanru, rust-sig
Target Milestone: ---Keywords: Security, SecurityTracking
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: {"flaws": ["a44d88be-3d28-4a43-b9a8-baed2630a1bb"]}
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2026-08-24 09:58:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2520691    

Description Vladimir Vasilev 2026-08-24 07:56:11 UTC
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

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.

Comment 1 Ben Beasley 2026-08-24 09:58:07 UTC
This package only uses libgit2 indirectly via the Rust git2 crate, and that only as a test dependency, so (1) I can’t see what could possibly be done here, rather than in libgit2 or rust-git2, and (2) the package can’t be affected by any vulnerabilities in a test dependency anyway.