{"id":"CVE-2026-94447","kind":"vulnerability","aliases":["CVE-2026-94447","GO-2026-6602"],"related":[],"title":"Checksum database bypass for golang.org/toolchain in cmd/go","description":"Previously, a user operating inside of a malicious Go project that defines a bogus golang.org/toolchain go.sum entry and operates a malicious GOMODPROXY the user chooses to use can bypass the intended checksum.\n\nWe now ensure that golang.org/toolchain always goes to the network for the canonical checksum.","summary":"The Go toolchain's cmd/go could accept a checksum for golang.org/toolchain from a malicious project's go.sum and a malicious module proxy, bypassing checksum verification. An attacker who gets a developer to work inside a crafted Go project and use a hostile GOMODPROXY can have a tampered toolchain trusted in place of the genuine one.","severity":"high","cvss":7.8,"epss":0.00103,"exploited":false,"exploited_at":null,"products":[{"name":"toolchain","fixed":["1.26.9","1.27.2"],"affected":">= 1.27.0-0, < 1.27.2","ecosystem":"go"}],"ecosystems":["go"],"tags":["ci","developers","go","golang","runtime"],"not_affected_if":["default-proxy-only","go-not-used","trusted-projects-only"],"how_to_check":"Run go version and compare against the fixed releases (1.26.9 or 1.27.2 or later).\nCheck GOMODPROXY (go env GOMODPROXY) for any proxy the team did not set deliberately.","fix":"Upgrade the Go toolchain to 1.26.9 or 1.27.2 (affected range is >= 1.27.0-0 and < 1.27.2).\nOnly use trusted GOMODPROXY values and do not open untrusted Go projects with custom proxy settings.","status":"open","published_at":"2026-10-08T22:31:09+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","triaged_at":"2026-10-23T19:52:56+00:00","updated_at":"2026-10-23T19:52:56+00:00","category":"runtime","confidence":0.7,"triage":{"at":"2026-10-23T19:52:56Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade the Go toolchain to 1.26.9 or 1.27.2 (affected range is >= 1.27.0-0 and < 1.27.2).\nOnly use trusted GOMODPROXY values and do not open untrusted Go projects with custom proxy settings.","summary":"The Go toolchain's cmd/go could accept a checksum for golang.org/toolchain from a malicious project's go.sum and a malicious module proxy, bypassing checksum verification. An attacker who gets a developer to work inside a crafted Go project and use a hostile GOMODPROXY can have a tampered toolchain trusted in place of the genuine one.","category":"runtime","who_cares":["go","golang","developers","ci"],"confidence":0.7,"analyst_note":"","how_to_check":"Run go version and compare against the fixed releases (1.26.9 or 1.27.2 or later).\nCheck GOMODPROXY (go env GOMODPROXY) for any proxy the team did not set deliberately.\nunknown for any other exposure check.","needs_analyst":false,"not_affected_if":["go-not-used","default-proxy-only","trusted-projects-only"],"severity_if_unknown":"unknown"},"cost_usd":0.000421,"input_tokens":2127,"output_tokens":417,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':11A,14A,17A '-6602':15A '-94447':12A,18A '/toolchain':7A,37B,98C,122C 'accept':31B 'alway':123C 'attack':53B 'bogus':95C 'bypass':3A,49B,112C 'canon':130C 'checksum':1A,33B,50B,115C,131C 'choos':108C 'ci':20B 'cmd/go':9A,29B 'could':30B 'craft':62B 'cve':10A,16A 'databas':2A 'defin':93C 'develop':21B,57B 'ensur':118C 'entri':100C 'genuin':80B 'get':55B 'go':13A,22B,26B,63B,90C 'go.sum':43B,99C 'goe':124C 'golang':23B 'golang.org':6A,36B,97C,121C 'golang.org/toolchain':5A,35B,96C,120C 'gomodproxi':69B,105C 'hostil':68B 'insid':60B,86C 'intend':114C 'malici':40B,46B,89C,104C 'modul':47B 'network':127C 'one':81B 'oper':85C,102C 'place':77B 'previous':82C 'project':41B,64B,91C 'proxi':48B 'runtim':24B 'tamper':73B 'toolchain':19A,27B,74B 'trust':75B 'use':66B,110C 'user':84C,107C 'verif':51B 'work':59B","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-08T22:31:09+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","cvss_by":"134c704f-9b21-4f2e-91b3-4a467353bcc0","poc_count":0,"sources":[{"source":"govuln","external_id":"GO-2026-6602","url":"https://pkg.go.dev/vuln/GO-2026-6602","severity":null,"published_at":"2026-10-08T22:31:09+00:00","modified_at":"2026-10-08T22:31:09+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","fetched_at":"2026-10-23T19:13:08+00:00","note":null},{"source":"epss","external_id":"CVE-2026-94447","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-94447","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-23T19:13:43+00:00","fetched_at":"2026-10-23T19:13:43+00:00","note":null},{"source":"nvd","external_id":"CVE-2026-94447","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-94447","severity":null,"published_at":"2026-10-08T23:17:05+00:00","modified_at":"2026-10-15T16:18:24+00:00","first_seen_at":"2026-10-23T19:35:23+00:00","fetched_at":"2026-10-23T19:35:23+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}