Supported Versions
The Go team maintains and provides security updates for the past two Go releases.For example, when Go 1.18.x is the latest stable release, both Go 1.17.x and Go 1.18.x receive security updates.
Release Cycle
Go follows a predictable release cycle:- Major releases: Approximately every 6 months
- Minor releases: As needed for bug fixes and security patches
- Security updates: Provided for the two most recent major releases
Reporting a Vulnerability
How to Report
Review the Policy
Read the complete security policy at go.dev/security/policy.
Email the Security Team
Send a detailed report to [email protected].Include:
- Description of the vulnerability
- Steps to reproduce
- Potential impact
- Any suggested fixes (optional)
Wait for Response
The security team will acknowledge your report and work with you on addressing the issue.
What to Include in Your Report
A good security report should include:Security Best Practices
While using Go:Keep Go Updated
Regularly update to the latest patch release of your Go version
Monitor Announcements
Subscribe to the golang-announce mailing list for security updates
Review Dependencies
Keep your dependencies updated and check for known vulnerabilities
Use go.sum
Commit your go.sum file to ensure reproducible builds
Vulnerability Scanning
Go provides tools to help identify known vulnerabilities:Security Updates
When security issues are fixed:- Announcement: Posted to golang-announce
- CVE Assignment: Critical issues receive CVE identifiers
- Patch Release: Fixed in new patch releases for supported versions
- Documentation: Security advisories published on go.dev
Response Timeline
The Go security team aims to:- Acknowledge reports within 48 hours
- Provide initial assessment within 7 days
- Develop and test fixes as quickly as possible
- Coordinate disclosure with the reporter