logoalt Hacker News

tadfisheryesterday at 6:45 PM2 repliesview on HN

> Go is also nice in that regard - you are depending on Git repositories directly, so you have to hijack into the Git repo permissions and spoil the source code there.

That in itself is scary because Git refs are mutable. Even with compromised credentials, no one can replace artifacts already deployed to Maven Central, because they simply don't allow it. There is nothing stopping someone from replacing a Git tag with one that points to compromised code.

The surface area is smaller because Go does locking via go.sum, but I could certainly see a tired developer regenerating it over the most strenuous of on-screen objections from the go CLI.


Replies

JodieBenitezyesterday at 8:04 PM

I don't know if it's a common or even a good practice, but I like to go mod vendor and add the result to my repo.

fpolingyesterday at 8:08 PM

Go also includes a database of known package hashes so altering git tag to point to another commit will be detected.