Description
An improper authorization vulnerability in scoped user-to-server (ghu_) token authorization in GitHub Enterprise Server allows an authenticated attacker to access private repositories outside the intended installation scope, which can include write operations, via an authorization fallback that treated a revoked/deleted installation as a global installation context, which could be chained with token revocation timing and SSH push attribution to obtain and reuse a victim-scoped token. This vulnerability affected all versions of GitHub Enterprise Server prior to 3.21 and was fixed in versions 3.20.1, 3.19.5, 3.18.8, 3.17.14, 3.16.17, 3.15.21, and 3.14.26. This vulnerability was reported via the GitHub Bug Bounty program.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
GitHub Enterprise Server
Default version status: unaffected
3.20.0 to < 3.20.1affected3.19.0 to ≤ 3.19.4affected3.18.0 to ≤ 3.18.7affected3.17.0 to ≤ 3.17.13affected3.16.0 to ≤ 3.16.16affected3.15.0 to ≤ 3.15.20affected3.14.0 to ≤ 3.14.25affected
References
- https://docs.github.com/en/enterprise-server@3.20/admin/release-notes#3.20.1 ↗
- https://docs.github.com/en/enterprise-server@3.19/admin/release-notes#3.19.5 ↗
- https://docs.github.com/en/enterprise-server@3.18/admin/release-notes#3.18.8 ↗
- https://docs.github.com/en/enterprise-server@3.17/admin/release-notes#3.17.14 ↗
- https://docs.github.com/en/enterprise-server@3.16/admin/release-notes#3.16.17 ↗
- https://docs.github.com/en/enterprise-server@3.15/admin/release-notes#3.15.21 ↗
- https://docs.github.com/en/enterprise-server@3.14/admin/release-notes#3.14.26 ↗