govulncheckの呼び出し到達解析で脆弱性をトリアージする
Go
セキュリティ
脆弱性管理
Goプロジェクトの依存脆弱性チェックでは govulncheck ./... を使う。govulncheckは静的解析で「実コードから呼び出し到達があるか」を判定し、報告を3層に分類する: (1) Your code is affected = 実コードから到達=最優先で対応、(2) importしているが未到達、(3) requireのみで未import。同じCVEでも到達層によって実リスクが大きく異なるため、まず到達ありのものから対応する。多くは依存バージョンの更新(go get pkg@fixedversion → go mod tidy)だけで解消でき、修正後は再度 govulncheck を流して『No vulnerabilities found.』を確認し、go build と go mod verify で回帰がないことを検証する。ローカル未インストールでも go run golang.org/x/vuln/cmd/govulncheck@latest ./... で実行可能。