GHSA-57q7-rxqq-7vgp On Windows, `git-sizer` might run a `git` executable within the repository being analyzed
An attacker can execute arbitrary code on Windows by tricking a user into running git-sizer on a malicious repository containing a fake git executable.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is GHSA-57q7-rxqq-7vgp?
GHSA-57q7-rxqq-7vgp is a command injection vulnerability in github.com/github/git-sizer, published on 15 Feb 2022. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Official description
Impact
On Windows, if git-sizer is run against a non-bare repository, and that repository has an executable called git.exe, git.bat, etc., then that executable might be run by git-sizer rather than the system git executable. An attacker could try to use social engineering to get a victim to run git-sizer against a hostile repository and thereby get the victim to run arbitrary code.
On Linux or other Unix-derived platforms, a similar problem could occur if the user's PATH has the current directory before the path to the standard git executable, but this is would be a very unusual configuration that has been known for decades to lead to all kinds of security problems.
Patches
Users should update to git-sizer v1.4.0
Workarounds
If you are on Windows, then either
- Don't run
git-sizeragainst a repository that might contain hostile code, or, if you must… - Run
git-sizeragainst a bare clone of the hostile repository, or, if that is not possible… - Make sure that the hostile repository doesn't have an executable in its top-level directory before running
git-sizer.
If you are on Linux or other Unix-based system, then (for myriad reasons!) don't add the current directory to your PATH.
References
For more information
If you have any questions or comments about this advisory:
- Open an issue in the
git-sizerproject. - Email us at GitHub support.
Which versions are affected by GHSA-57q7-rxqq-7vgp?
3 open source packages ship an affected version, including github.com/github/git-sizer.
| Package | Affected | Fixed in |
|---|---|---|
github.com/github/git-sizer Go | All versions | 1.4.0 |
github.com/github/git-sizer Go | All versions | 1.4.0 |
github.com/github/git-sizer Go | All versions | 1.4.0 |
How do I fix GHSA-57q7-rxqq-7vgp?
Upgrade github.com/github/git-sizer to 1.4.0 or later.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is GHSA-57q7-rxqq-7vgp being exploited?
There is no known exploitation of GHSA-57q7-rxqq-7vgp in the wild and no public exploit code.
Sources
Also known as GO-2022-0424.