CVE-2024-52006
Newline confusion in credential helpers can lead to credential exfiltration in git
In short
Git credential helpers can leak credentials when using certain programming languages (like .NET or Node.js) because they incorrectly interpret carriage return characters as line endings, bypassing security protections. An attacker could trick you into cloning a malicious repository and steal your credentials.
Technical detail
The vulnerability stems from inconsistent newline interpretation in Git's credential helper protocol; ecosystems treating CR as newline can bypass CVE-2020-5260 protections. Attack vector involves crafted repository URLs in clone operations; pre-condition requires use of affected credential helpers in vulnerable language ecosystems. Impact includes credential exfiltration to attacker-controlled hosts.
Summary generated and translated by AI from the official description.
Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. Git defines a line-based protocol that is used to exchange information between Git and Git credential helpers. Some ecosystems (most notably, .NET and node.js) interpret single Carriage Return characters as newlines, which renders the protections against CVE-2020-5260 incomplete for credential helpers that treat Carriage Returns in this way. This issue has been addressed in commit `b01b9b8` which is included in release versions v2.48.1, v2.47.2, v2.46.3, v2.45.3, v2.44.3, v2.43.6, v2.42.4, v2.41.3, and v2.40.4. Users are advised to upgrade. Users unable to upgrade should avoid cloning from untrusted URLs, especially recursive clones.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N