Impact
git repositories can contain per-repository configuration that change the behaviour of git, including running arbitrary commands. When using the default configuration of fish, changing to a directory automatically runs git commands in order to display information about the current repository in the prompt.
If an attacker can convince a user to change their current directory into one controlled by the attacker, such as on a shared file system or extracted archive, fish will run arbitrary commands under the attacker's control. This does not include repositories created by git clone.
Patches
This problem has been fixed in fish 3.4.0. Note that running git in these directories, including using the git tab completion, remains a potential trigger for this issue.
Workarounds
Remove the fish_git_prompt function from your prompt.
For more information
If you have any questions or comments about this advisory:
Thanks to Justin Steven for alerting us to this problem.
Impact
git repositories can contain per-repository configuration that change the behaviour of git, including running arbitrary commands. When using the default configuration of fish, changing to a directory automatically runs
gitcommands in order to display information about the current repository in the prompt.If an attacker can convince a user to change their current directory into one controlled by the attacker, such as on a shared file system or extracted archive, fish will run arbitrary commands under the attacker's control. This does not include repositories created by
git clone.Patches
This problem has been fixed in fish 3.4.0. Note that running git in these directories, including using the git tab completion, remains a potential trigger for this issue.
Workarounds
Remove the
fish_git_promptfunction from your prompt.For more information
If you have any questions or comments about this advisory:
Thanks to Justin Steven for alerting us to this problem.