Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
A malicious Go module, github.com/boltdb-go/bolt, impersonated the popular Bolt database project and reportedly carried a backdoor capable of remote code execution. The key lesson is that a GitHub tag inspected after it was changed might not match the older module content already cached and served by the Go Module Proxy. InfoWorld reported the incident on February 5, 2025, with an update on February 6.
What was the malicious Go package?
The reported package path was github.com/boltdb-go/bolt, a typosquat of the established BoltDB project. It was not the legitimate BoltDB project that was reported as compromised. InfoWorld described the impostor module as containing a backdoor with remote-code-execution capability. InfoWorld’s incident report does not identify an exact malicious version string, so the module path alone is not enough to determine whether a particular build was affected.
How could GitHub look clean while the proxy served malicious code?
According to InfoWorld’s account, the module was first cached by the Go Module Mirror. The GitHub tag was later changed to remove visible traces of the backdoor. A developer reviewing the repository after that change could therefore see code that differed from the older, backdoored content retrieved through the Go Module Proxy.
This describes the reported historical sequence, not a live test of the proxy today. It also does not mean that Go module proxies generally serve unsafe downloads. The practical issue is that a repository’s current appearance is not always a complete record of the content previously tagged, cached, or downloaded.
#1 Best Overall
What Google said it did
In the report’s February 6, 2025 update, Google was quoted as saying: “The module has been removed from both the Go module proxy and GitHub, and we’ve added it to the Go vulnerability database for anyone who thinks they may have been impacted.” The statement also mentioned capability analysis via Capslock and comparisons with deps.dev. InfoWorld did not name an individual Google spokesperson.
That is a dated removal statement; it does not establish the present status of downstream caches or every copy already downloaded. The report does not provide a vulnerability database record ID or exact affected versions. Do not infer either from the package path: check the official Go vulnerability database for authoritative incident details.
What developers should do
If your project may have used the package
- Search your dependency declarations and lock data for the exact path
github.com/boltdb-go/bolt. Check your module cache and build records as appropriate; the name similarity makes visual review of “Bolt” references insufficient. - Establish which version and content your build actually used from your recorded dependency and build data. The report does not state the affected version strings, so do not guess a version from the incident description.
- Check the official Go vulnerability database for the package and advisory details, then compare those details with your project’s resolved dependencies.
- If you find a match, follow your organization’s incident-response process to assess exposure and investigate whether the package’s reported remote-code-execution capability could have affected build or runtime systems. The report describes capability, not confirmed exploitation of downstream users.
Before accepting unfamiliar dependencies
- Verify the full module path against the intended upstream project; a one-word or organization-name variation can be a deliberate impersonation.
- Review dependency changes for unexpected additions or indirect dependencies, and verify package integrity rather than relying only on a familiar-looking repository page.
- Use tools that inspect installed code and dependency behavior more deeply. Socket’s guidance, as relayed by InfoWorld, recommends integrity checks, anomaly review, and deeper code examination; these practices reduce risk but cannot guarantee safety.
- For important dependencies, preserve reproducible build and dependency records so that later repository changes do not erase what a past build actually consumed.
What the reported figures do—and do not—show
InfoWorld reported that Socket put the number of packages dependent on the legitimate BoltDB module at 8,367. That is a figure attributed to Socket in the 2025 report, not a current dependency count. InfoWorld also described the malicious package as persisting for more than three years without detection. The report does not establish a precise exposure window, confirmed downstream infections, or successful exploitation.
Quick Recap
Best Value
Rank #4
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

