Executive brief
Atlantis, a tool used for automating Terraform workflows, was found to leak sensitive GitHub credentials in its application logs during token rotation. An attacker or unauthorized employee with access to these logs could steal these credentials to impersonate the application and gain administrative control over GitHub organizations and repositories. This could lead to unauthorized infrastructure changes or full compromise of source code and deployment environments.
Technical details
A sensitive information leak (CWE-532) exists in Atlantis versions prior to 0.30.0. The vulnerability occurs in the GitHub App credential rotation logic within 'vcs/gh_app_creds_rotator.go', where the application logs the full 'ghs_' token at the debug level. An attacker with low-privileged network access to log aggregation tools (such as Argo CD or Kubernetes log viewers) can extract these tokens. These tokens grant the same permissions as the Atlantis GitHub App, potentially allowing full administrative access to managed GitHub organizations. The issue is fixed in version 0.30.0 by removing the sensitive logging.
Affected products
- runatlantis atlantis < 0.30.0
Timeline
- 2024-11-08: advisory: GitHub Advisory GHSA-gppm-hq3p-h4rp published
- 2024-11-08: patched: Fix included in Atlantis v0.30.0