一个Go模块,为Windows上的exec.LookPath()提供了更安全的替代方法。 safeexec一个Go模块,为Windows上的exec.LookPath()提供了更安全的替代方法。 以下相对较常见的运行外部命令的方法在Windows上存在一个细微的漏洞:import“ os / exec” func gitStatus()error {//在Windows上,这将导致`。\ git.exe`或`。\ git //正在当前工作目录中找到的.bat`。 cmd:= exec.Command(“ git”,“ status”)return cmd.Run()}搜索当前目录(令人惊讶的行为