Due to the standard library behavior of exec.LookPath on Windows a number of methods may result in arbitrary code execution when cloning or operating on untrusted Git repositories.
{
"review_status": "REVIEWED",
"url": "https://pkg.go.dev/vuln/GO-2021-0098"
}{
"imports": [
{
"path": "github.com/git-lfs/git-lfs/commands",
"symbols": [
"PipeCommand",
"PipeMediaCommand",
"Run",
"lockVerifier.Verify",
"singleCheckout.Run",
"singleCheckout.RunToPath",
"uploadContext.NewQueue",
"uploadContext.UploadPointers"
],
"goos": [
"windows"
]
},
{
"path": "github.com/git-lfs/git-lfs/creds",
"symbols": [
"AskPassCredentialHelper.Fill",
"AskPassCredentialHelper.getFromProgram",
"CredentialHelperWrapper.FillCreds",
"CredentialHelpers.Approve",
"CredentialHelpers.Fill",
"commandCredentialHelper.Approve"
],
"goos": [
"windows"
]
},
{
"path": "github.com/git-lfs/git-lfs/lfs",
"symbols": [
"GitFilter.Clean",
"GitFilter.Smudge",
"GitFilter.SmudgeToFile",
"pipeExtensions"
],
"goos": [
"windows"
]
},
{
"path": "github.com/git-lfs/git-lfs/lfshttp",
"symbols": [
"Client.Do",
"Client.DoWithAccess",
"Client.HttpClient",
"Client.NewRequest",
"Client.Transport",
"sshAuthClient.Resolve",
"sshCache.Resolve"
],
"goos": [
"windows"
]
}
]
}