cbcvebase.
CVE-2014-9390
published 2020-02-12

CVE-2014-9390: 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 before 2.2.1 on Windows and OS X; Mercurial before 3.2.3 on Windows…

PriorityP180critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
EXPLOIT
EPSS
63.18%
99.1th percentile
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 before 2.2.1 on Windows and OS X; Mercurial before 3.2.3 on Windows and OS X; Apple Xcode before 6.2 beta 3; mine all versions before 08-12-2014; libgit2 all versions up to 0.21.2; Egit all versions before 08-12-2014; and JGit all versions before 08-12-2014 allow remote Git servers to execute arbitrary commands via a tree containing a crafted .git/config file with (1) an ignorable Unicode codepoint, (2) a git~1/config representation, or (3) mixed case that is improperly handled on a case-insensitive filesystem.

Affected

39 ranges· showing 25
VendorProductVersion rangeFixed in
applexcode<= 6.1.1
applexcode
applexcode
debiandulwich< dulwich 0.10.1-1 (bookworm)dulwich 0.10.1-1 (bookworm)
debiangit< dulwich 0.10.1-1 (bookworm)dulwich 0.10.1-1 (bookworm)
debianjgit< dulwich 0.10.1-1 (bookworm)dulwich 0.10.1-1 (bookworm)
debianlibgit2< dulwich 0.10.1-1 (bookworm)dulwich 0.10.1-1 (bookworm)
debianmercurial< dulwich 0.10.1-1 (bookworm)dulwich 0.10.1-1 (bookworm)
dulwich_projectdulwich>= 0 < 0.10.1-10.10.1-1
dulwich_projectdulwich>= 0 < 0.10.1-10.10.1-1
dulwich_projectdulwich>= 0 < 0.10.1-10.10.1-1
dulwich_projectdulwich>= 0 < 0.10.1-10.10.1-1
eclipseegit< 08-12-201408-12-2014
eclipsejgit< 3.4.23.4.2
eclipsejgit>= 0 < 3.7.0-13.7.0-1
eclipsejgit>= 0 < 3.7.0-13.7.0-1
eclipsejgit>= 0 < 3.7.0-13.7.0-1
eclipsejgit>= 0 < 3.7.0-13.7.0-1
eclipsejgit>= 3.5.0 < 3.5.33.5.3
git-scmgit< 1.8.5.61.8.5.6
git-scmgit>= 1.9.0 < 1.9.51.9.5
git-scmgit>= 2.0.0 < 2.0.52.0.5
git-scmgit>= 2.1.0 < 2.1.42.1.4
git-scmgit>= 2.2.0 < 2.2.12.2.1
gitgit>= 0 < 1:2.1.4-11:2.1.4-1

Detection & IOCsextracted from sources · hover to see the quote

path.git/config
pathgit~1/config
filenamepost-checkout
filenameupdate
uagit/
command#!/bin/sh #{payload.encoded}
path/info/refs
path/HEAD
  • Detect Git clients fetching from a malicious server by monitoring HTTP User-Agent strings matching '^git/' combined with requests to paths under a suspicious Git URI; the exploit serves crafted objects under /objects/ and /info/refs.
  • On Git servers, enable receive.fsckObjects, core.protectHFS, and core.protectNTFS to reject inbound objects containing malicious paths (.git case variants, Unicode ignorable codepoints, 8.3 short names like git~1).
  • Detect Mercurial exploitation attempts by monitoring for HTTP User-Agent strings matching '^mercurial/' fetching a repository that advertises a 'getbundle' capability, combined with a hook file named 'update' being written to the .hg/hooks directory.
  • The Mercurial exploit server responds to '?cmd=capabilities' with 'heads getbundle=HG10UN'; network signatures matching this exact capability string from an unexpected server may indicate a malicious Mercurial instance.
  • ·The vulnerability is only exploitable when the local Git repository resides on a case-insensitive filesystem (HFS+, NTFS). Systems using case-sensitive filesystems (ext2/3/4, XFS) are not affected.
  • ·After patching, operators must explicitly set core.protectHFS and/or core.protectNTFS to 'true' in Git configuration to activate the new protections; patching alone does not enable them.
  • ·The Metasploit module only fully implements the case-insensitive filesystem vector (Git on Windows/macOS); the Unicode ignorable codepoint and Windows 8.3 short-name vectors are not yet operationally complete in the module.

CVSS provenance

nvdv3.19.8CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvdv2.07.5HIGHAV:N/AC:L/Au:N/C:P/I:P/A:P
osv9.8CRITICAL
vendor_debian9.8CRITICAL
vendor_redhat9.8CRITICAL
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.