go-gh `auth.TokenForHost` violates GitHub host security boundary within a codespace
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Information disclosure
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-200.
Summary
go-gh is a Go module for interacting with the `gh` utility and the GitHub API from the command line. A security vulnerability has been identified in `go-gh` that could leak authentication tokens intended for GitHub hosts to non-GitHub hosts when within a codespace. `go-gh` sources authentication tokens from different environment variables depending on the host involved: 1. `GITHUB_TOKEN`, `GH_TOKEN` for GitHub.com and ghe.com and 2. `GITHUB_ENTERPRISE_TOKEN`, `GH_ENTERPRISE_TOKEN` for GitHub Enterprise Server. Prior to version `2.11.1`, `auth.TokenForHost` could source a token from the `GITHUB_TOKEN` environment variable for a host other than GitHub.com or ghe.com when within a codespace. In version `2.11.1`, `auth.TokenForHost` will only source a token from the `GITHUB_TOKEN` environment variable for GitHub.com or ghe.com hosts. Successful exploitation could send authentication token to an unintended host. This issue has been addressed in version 2.11.1 and all users are advised to upgrade. Users are also advised to regenerate authentication tokens and to review their personal security log and any relevant audit logs for actions associated with their account or enterprise.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| cli | go-gh | before 2.11.1 | 2.11.1 | Patch available | CNA |
| — | github.com/cli/go-gh/v2 (Go) | before 2.11.1 | 2.11.1 | Patch available | GHSA-55v3-xh23-96gh |
| — | github.com/cli/go-gh (Go) | all versions | — | No fix listed | GHSA-55v3-xh23-96gh |
- go-gh Vendorcli Affected before 2.11.1 Fixed in 2.11.1 Patch available CNA
- github.com/cli/go-gh/v2 (Go) Vendor— Affected before 2.11.1 Fixed in 2.11.1 Patch available GHSA-55v3-xh23-96gh
- github.com/cli/go-gh (Go) Vendor— Affected all versions Fixed in — No fix listed GHSA-55v3-xh23-96gh
Remediation
- Fix · CNA go-gh (cli) Fixed in 2.11.1
- Fix · GHSA-55v3-xh23-96gh github.com/cli/go-gh/v2 (Go) Fixed in 2.11.1 Advisory →
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2024-53859
- 2026-10-03 Alias added: GHSA-55v3-xh23-96gh
References
Advisory 2
Other 7
- https://docs.github.com/en/apps/using-github-apps/reviewing-and-revoking-authorization-of-github-apps#reviewing-your-authorized-github-apps
- https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log
- https://docs.github.com/en/enterprise-cloud@latest/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/identifying-audit-log-events-performed-by-an-access-token
- https://docs.github.com/en/enterprise-cloud@latest/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens
- https://github.com/cli/go-gh/blob/71770357e0cb12867d3e3e288854c0aa09d440b7/pkg/auth/auth.go#L73-L77
- https://github.com/cli/go-gh
- https://pkg.go.dev/vuln/GO-2024-3295
More cli Go-gh vulnerabilities
- TI-2025-31076 Prevent GitHub CLI and extensions from executing arbitrary commands from compromised GitHub Enterprise Server CVSS 4.0LOW 2.6
Sources
- CVE-2024-53859 · CVE Program
- CVE-2024-53859 · NVD
- FIRST EPSS
- GHSA-55v3-xh23-96gh · GitHub Advisory Database · CC BY 4.0
- CVE-2024-53859 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences