Skip to content
MinGit for Windows v2.21.0(4)

Changes since MinGit v2.21.0(4) (August 17th 2019)

Enhancements:

* There is only one system gitconfig now (no more
  `C:\ProgramData\Git\config`), and it is in the top-level `etc`
  directory.

* The Azure Pipeline was adjusted for changes in Homebrew and Cygwin
  that are outside of Git's control.

Bug Fixes

* CVE-2019-1348:
  The --export-marks option of git fast-import is exposed also via the
  in-stream command feature export-marks=... and it allows overwriting
  arbitrary paths.

* CVE-2019-1349:
  When submodules are cloned recursively, under certain circumstances
  Git could be fooled into using the same Git directory twice. We now
  require the directory to be empty.

* CVE-2019-1350:
  Incorrect quoting of command-line arguments allowed remote code
  execution during a recursive clone in conjunction SSH URLs.

* CVE-2019-1351:
  While the only permitted drive letters for physical drives on Windows
  are letters of the US-English alphabet, this restriction does not
  apply to virtual drives assigned via subst <letter>: <path>. Git
  mistook such paths for relative paths, allowing writing outside of the
  worktree while cloning.

* CVE-2019-1352:
  Git was unaware of NTFS Alternate Data Streams, allowing files inside
  the .git/ directory to be overwritten during a clone.

* CVE-2019-1353:
  When running Git in WSL while accessing a working directory on a
  regular Windows drive, none of the NTFS protections were active.

* CVE-2019-1354:
  Filenames on Linux/Unix can contain backslashes. On Windows,
  backslashes are directory separators. Git did not use to refuse to
  write out tracked files with such filenames.

* CVE-2019-1387:
  Recursive clones are currently affected by a vulnerability that is
  caused by too-lax validation of submodule names, allowing very
  targeted attacks via remote code execution in recursive clones.