)]}'
{
  "commit": "953d1feca9b21af075ad5fc8a3dad096d3ccc3a0",
  "tree": "1ff369f7be4e70f816db745bc2b4cc465c9b4f96",
  "parents": [
    "b186e4d70de28697d1ad7e3c31625793e6338ef0"
  ],
  "author": {
    "name": "Roland Shoemaker",
    "email": "roland@golang.org",
    "time": "Fri Jan 15 12:14:06 2021 -0800"
  },
  "committer": {
    "name": "Roland Shoemaker",
    "email": "roland@golang.org",
    "time": "Thu Jan 21 19:10:18 2021 +0000"
  },
  "message": "all: introduce and use internal/execabs\n\nIntroduces a wrapper around os/exec, internal/execabs, for use in\nall commands. This wrapper prevents exec.LookPath and exec.Command from\nrunning executables in the current directory.\n\nAll imports of os/exec in non-test files in cmd/ are replaced with\nimports of internal/execabs.\n\nThis issue was reported by RyotaK.\n\nFixes CVE-2021-3115\nFixes #43783\n\nChange-Id: I0423451a6e27ec1e1d6f3fe929ab1ef69145c08f\nReviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/955304\nReviewed-by: Russ Cox \u003crsc@google.com\u003e\nReviewed-by: Katie Hockman \u003ckatiehockman@google.com\u003e\nReviewed-on: https://go-review.googlesource.com/c/go/+/284783\nRun-TryBot: Roland Shoemaker \u003croland@golang.org\u003e\nReviewed-by: Katie Hockman \u003ckatie@golang.org\u003e\nTrust: Roland Shoemaker \u003croland@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ba42812fa6365e3a1adcf6c20b6606ce5b905820",
      "old_mode": 33188,
      "old_path": "src/cmd/api/goapi.go",
      "new_id": "efc2696f8fecc72bfdf6ad27ffc99ec814cdaae0",
      "new_mode": 33188,
      "new_path": "src/cmd/api/goapi.go"
    },
    {
      "type": "modify",
      "old_id": "a36f1179c16e9839fa7f1bd417b788a27d9df6db",
      "old_mode": 33188,
      "old_path": "src/cmd/api/run.go",
      "new_id": "ecb1d0f81aa46695d47634b94eb6571368e0ffef",
      "new_mode": 33188,
      "new_path": "src/cmd/api/run.go"
    },
    {
      "type": "modify",
      "old_id": "fa6f0efbbe0e20ecf5b6ba8bed7f5229083a8768",
      "old_mode": 33188,
      "old_path": "src/cmd/cgo/out.go",
      "new_id": "8e83f02202f73c15a92b8a1b5fce6f4b18236103",
      "new_mode": 33188,
      "new_path": "src/cmd/cgo/out.go"
    },
    {
      "type": "modify",
      "old_id": "779f7be2259b3750166b6edce318adb779e7a3a6",
      "old_mode": 33188,
      "old_path": "src/cmd/cgo/util.go",
      "new_id": "00d931b98a0c1e8416d5bb14334946dbd9a56304",
      "new_mode": 33188,
      "new_path": "src/cmd/cgo/util.go"
    },
    {
      "type": "modify",
      "old_id": "a9d52fa4ee056c16d7c3cfc840c71a495f757071",
      "old_mode": 33188,
      "old_path": "src/cmd/compile/internal/ssa/html.go",
      "new_id": "c06b5808e1c00296653f87cfd56a680c4a22c9b4",
      "new_mode": 33188,
      "new_path": "src/cmd/compile/internal/ssa/html.go"
    },
    {
      "type": "modify",
      "old_id": "988c4caebffe13dc11e6bffb304016abc5673723",
      "old_mode": 33188,
      "old_path": "src/cmd/cover/func.go",
      "new_id": "ce7c771ac961971af670b00c1c79ea1c8b22153c",
      "new_mode": 33188,
      "new_path": "src/cmd/cover/func.go"
    },
    {
      "type": "modify",
      "old_id": "1769efedbeb678674045a9d6b9bbc08fb4e5ed30",
      "old_mode": 33188,
      "old_path": "src/cmd/cover/testdata/toolexec.go",
      "new_id": "386de79038a355c2de01fead816a1410479490f8",
      "new_mode": 33188,
      "new_path": "src/cmd/cover/testdata/toolexec.go"
    },
    {
      "type": "modify",
      "old_id": "e7bedfb84eec506061b2c3a7ba3733b8ac9fbe63",
      "old_mode": 33188,
      "old_path": "src/cmd/dist/buildtool.go",
      "new_id": "cf85f2ac8ea5ffe408d8d36de8672c554ed40cc1",
      "new_mode": 33188,
      "new_path": "src/cmd/dist/buildtool.go"
    },
    {
      "type": "modify",
      "old_id": "38cbe7fa021973943c459461684f14b58220b7be",
      "old_mode": 33188,
      "old_path": "src/cmd/doc/dirs.go",
      "new_id": "661624cfe4c168c793d582203de163f3169634e6",
      "new_mode": 33188,
      "new_path": "src/cmd/doc/dirs.go"
    },
    {
      "type": "modify",
      "old_id": "40b2287f26e9c9ce9dda9adae2afd8ed7a3293cf",
      "old_mode": 33188,
      "old_path": "src/cmd/fix/typecheck.go",
      "new_id": "39a53785b724d4105ccfd6d7bdd320a7f3428005",
      "new_mode": 33188,
      "new_path": "src/cmd/fix/typecheck.go"
    },
    {
      "type": "modify",
      "old_id": "004588c73204d6054c667e4949fbca94a641a4ac",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/base/base.go",
      "new_id": "954ce47a9899325014b4e99b5b6a1875a4120f30",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/base/base.go"
    },
    {
      "type": "modify",
      "old_id": "1085feaaee83b44c60542f73720d2fd1a8ed5d47",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/bug/bug.go",
      "new_id": "4aa08b4ff6ea7ab988daa86f3243b12948f0b64f",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/bug/bug.go"
    },
    {
      "type": "modify",
      "old_id": "b1e001c8008ba5f852185d67925726f8453da728",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/generate/generate.go",
      "new_id": "a48311d51b09b7a2a356e1e567abfcaa1af60b7b",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/generate/generate.go"
    },
    {
      "type": "modify",
      "old_id": "86c1c14d4a7ad643f5fd30d0aae095ad878b7da1",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/modfetch/codehost/codehost.go",
      "new_id": "378fbae34f9530378ced67a8298f797891af9e72",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/modfetch/codehost/codehost.go"
    },
    {
      "type": "modify",
      "old_id": "8abc039e7fc0688a1b002a34f95109182bdef0a1",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/modfetch/codehost/git.go",
      "new_id": "72005e27d5eb83e75d56053dae51e64eb8ea63c8",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/modfetch/codehost/git.go"
    },
    {
      "type": "modify",
      "old_id": "5e83d53980c01741b950329c53266c3eca4ba9fd",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/test/genflags.go",
      "new_id": "30334b0f305ce495cc0475a43f6c08da063c90be",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/test/genflags.go"
    },
    {
      "type": "modify",
      "old_id": "50fe2dbf393b1f89bdaa484cc8a63e5b690ffef5",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/test/test.go",
      "new_id": "7fc9e8fbdcda1afb5837d5b2932329890b49b6a2",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/test/test.go"
    },
    {
      "type": "modify",
      "old_id": "6a755bc43627874a3f789ba4dc7467e12b146c59",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/tool/tool.go",
      "new_id": "95c90ea7c8da4a3f5121af3d78db4b80d8b18f65",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/tool/tool.go"
    },
    {
      "type": "modify",
      "old_id": "327ea7cc86327de9e1f1518553793fea2b43c0ef",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/vcs/vcs.go",
      "new_id": "9feffe07656e84fa7fc821e5b52250d85077bedf",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/vcs/vcs.go"
    },
    {
      "type": "modify",
      "old_id": "ef995ef83539a1f2e7017fd12b3bbd6384abcb81",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/vet/vetflag.go",
      "new_id": "5bf5cf44467f144f27df7a267203c9745e1645e5",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/vet/vetflag.go"
    },
    {
      "type": "modify",
      "old_id": "873d85de4e646e101bb36acabe3fc64d825f13d5",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/work/build.go",
      "new_id": "780d639c5d9f3e16cdc8e6b1bfbbc34245145617",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/work/build.go"
    },
    {
      "type": "modify",
      "old_id": "d76988145bedc780d61375ee9a3f3d60f5c99756",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/work/buildid.go",
      "new_id": "c555d4a9f1ed036367fbfc0a0ed4d4e748919e09",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/work/buildid.go"
    },
    {
      "type": "modify",
      "old_id": "e7509042667409aff9fa5e210109bef6ddadd696",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/work/exec.go",
      "new_id": "16a4ebaa0f78c02a1bfb89d7a5f1563cbd224332",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/work/exec.go"
    },
    {
      "type": "modify",
      "old_id": "45ff7c983837084c1387ca40f9f9877eda579046",
      "old_mode": 33188,
      "old_path": "src/cmd/go/internal/work/gccgo.go",
      "new_id": "b58c8aa8854a459a53f5226a322eee342af296ab",
      "new_mode": 33188,
      "new_path": "src/cmd/go/internal/work/gccgo.go"
    },
    {
      "type": "modify",
      "old_id": "58376b7ed4ace8df006bba91e703b210f42bf5e6",
      "old_mode": 33188,
      "old_path": "src/cmd/go/testdata/addmod.go",
      "new_id": "09fc8e713bcbcfbc9ad226567369df1f2387d446",
      "new_mode": 33188,
      "new_path": "src/cmd/go/testdata/addmod.go"
    },
    {
      "type": "modify",
      "old_id": "6867c85d2320406bb4c80b8960f5b958c6a2f196",
      "old_mode": 33188,
      "old_path": "src/cmd/internal/browser/browser.go",
      "new_id": "577d31789f19afcb768e847cd69d2714e4d48b06",
      "new_mode": 33188,
      "new_path": "src/cmd/internal/browser/browser.go"
    },
    {
      "type": "modify",
      "old_id": "e9d2c237800a9c6c658eb41db1b58dcff102fe18",
      "old_mode": 33188,
      "old_path": "src/cmd/internal/diff/diff.go",
      "new_id": "c0ca2f310630cd7266a770d6b42748ae034cb050",
      "new_mode": 33188,
      "new_path": "src/cmd/internal/diff/diff.go"
    },
    {
      "type": "modify",
      "old_id": "e1a70ef853e7c06d53d306f18e167f78e0b4bfcd",
      "old_mode": 33188,
      "old_path": "src/cmd/internal/dwarf/dwarf.go",
      "new_id": "8de4096f068ea6fa60b655f5458686f11d765579",
      "new_mode": 33188,
      "new_path": "src/cmd/internal/dwarf/dwarf.go"
    },
    {
      "type": "modify",
      "old_id": "40a040a81af6acb54eb272d7bf388b8f79289d99",
      "old_mode": 33188,
      "old_path": "src/cmd/internal/pkgpath/pkgpath.go",
      "new_id": "72e3bdb6311611c4ce645e21c642f45efc847a76",
      "new_mode": 33188,
      "new_path": "src/cmd/internal/pkgpath/pkgpath.go"
    },
    {
      "type": "modify",
      "old_id": "fe5cc4086573b4b7754ec604f6e64c09e6a7b3e2",
      "old_mode": 33188,
      "old_path": "src/cmd/link/internal/ld/execarchive.go",
      "new_id": "4687c624de464611e7de9036ae187c3e94be6023",
      "new_mode": 33188,
      "new_path": "src/cmd/link/internal/ld/execarchive.go"
    },
    {
      "type": "modify",
      "old_id": "014969664b42214adafcd83cf7f2e25f1c32a91c",
      "old_mode": 33188,
      "old_path": "src/cmd/link/internal/ld/lib.go",
      "new_id": "17d5040827c0e4b03f708b719bf7752c486f3cf6",
      "new_mode": 33188,
      "new_path": "src/cmd/link/internal/ld/lib.go"
    },
    {
      "type": "modify",
      "old_id": "e40881ab3fc1ebe73e2769db5551b54e2383277e",
      "old_mode": 33188,
      "old_path": "src/cmd/test2json/main.go",
      "new_id": "fdf681a8ffe564cc07715b7c218b789345446d27",
      "new_mode": 33188,
      "new_path": "src/cmd/test2json/main.go"
    },
    {
      "type": "modify",
      "old_id": "a73ff5336afab0ced026cb58775a40c4184eeeaf",
      "old_mode": 33188,
      "old_path": "src/cmd/trace/pprof.go",
      "new_id": "c4d37428209ab61d7cc74f44725bc93a421a7dcf",
      "new_mode": 33188,
      "new_path": "src/cmd/trace/pprof.go"
    },
    {
      "type": "modify",
      "old_id": "72311c7d2c0e636e4b23b533e779dd3ee6ab56f6",
      "old_mode": 33188,
      "old_path": "src/go/build/build.go",
      "new_id": "217fadf5bd48600402cd310192d735c7731d9037",
      "new_mode": 33188,
      "new_path": "src/go/build/build.go"
    },
    {
      "type": "modify",
      "old_id": "99cd59e5b5cb907eb9cf04fa6f4a69fad7b8a49e",
      "old_mode": 33188,
      "old_path": "src/go/build/deps_test.go",
      "new_id": "c97c668cc4922914c12008c4c53f0ebd8321fb14",
      "new_mode": 33188,
      "new_path": "src/go/build/deps_test.go"
    },
    {
      "type": "modify",
      "old_id": "8fc7ce3232190c93bb74f445bf55be1929e4c786",
      "old_mode": 33188,
      "old_path": "src/go/internal/gccgoimporter/gccgoinstallation.go",
      "new_id": "e90a3cc0b0a343e601bc2fe6389e43a160c713b9",
      "new_mode": 33188,
      "new_path": "src/go/internal/gccgoimporter/gccgoinstallation.go"
    },
    {
      "type": "modify",
      "old_id": "c4d501dcd91bbd6629eaae9cc84345af7b777bf0",
      "old_mode": 33188,
      "old_path": "src/go/internal/srcimporter/srcimporter.go",
      "new_id": "438ae0ff2ee7de290df6510ebb5edcf7539ab243",
      "new_mode": 33188,
      "new_path": "src/go/internal/srcimporter/srcimporter.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9a05d971dadb9e49f632ba7622f88371e1b3a27d",
      "new_mode": 33188,
      "new_path": "src/internal/execabs/execabs.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b71458587c5e847db83c45f0528a0a8841155e14",
      "new_mode": 33188,
      "new_path": "src/internal/execabs/execabs_test.go"
    },
    {
      "type": "modify",
      "old_id": "0f541d734b0418e54ffcf9200180a4969bb42c7d",
      "old_mode": 33188,
      "old_path": "src/internal/goroot/gc.go",
      "new_id": "ce72bc389656a43681504ee97feff50b60526f1a",
      "new_mode": 33188,
      "new_path": "src/internal/goroot/gc.go"
    }
  ]
}
