Repository navigation
Replies: 1 comment
|
Update: we've refactored our build pipeline to ensure only certain steps have access to secrets and we've fully removed the codecov integration. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Today (Apr 15, 2021) Codecov, a code coverage tool, announced that they had a vulnerability in their bash uploader script that allowed an attacker to potentially view all secrets in the CI/CD environments of Codecov users (https://about.codecov.io/security-update/). This vulnerability was introduced January 31, 2021 and was remediated April 1, 2021.
Atlantis uses Codecov in its CI scripts. We have rotated potentially exposed tokens and if you were not using the
:latestDocker image tag during the period from Apr 1 until today then you will not have been affected. Please read on for more details.There are two secrets in our CI environment that could have been exposed:
The GitHub token we use to run integration tests. This token is used to create webhooks on https://github.com/runatlantis/atlantis-tests and then we start up Atlantis in CI and create test PRs on that repository. That token had
admin:repo_hookpermissions. If stolen, an attacker could have created repository webhooks or modified our GitHub action workflows for the runatlantis organization.We've audited our repositories and found no such changes. We have now rotated this secret.
The Docker hub token we use to publish
runatlantis/atlantisDocker images to our Docker hub account. If stolen, an attacker could have published malicious Docker images to our Docker hub account or modified existing images. For example they could have replaced theatlantisbinary with their own that logged credentials.We've confirmed that none of our stable images were modified. It is possible that the
:latestimage was modified. We have no way to confirm that this did or did not occur because the:latestimage is continually updated whenever themasterbranch changes.We audited our Docker Hub images and confirmed that the only images that have been pushed during the Jan 31-today window are:
runatlantis/atlantis:v0.16.1,runatlantis/atlantis:v0.17.0-betaandrunatlantis/atlantis:latest. We've confirmed that bothrunatlantis/atlantis:v0.16.1andrunatlantis/atlantis:v0.17.0-betahave not been modified by comparing their image SHAs and publish dates with the ones from our build pipeline.runatlantis/atlantis:latesttracks ourmasterbranch and so it is continually being updated. We've confirmed that the current tag matches ourmasterbranch, however it is possible that at some point during the window, an attacker pushed an update to that image which was then later overridden by a new push tomaster. There is no way for us to know if that occurred because the previous builds ofrunatlantis/atlantis:latestare overridden on new builds and Docker Hub does not provide logs for pushes. If you were or are currently usingrunatlantis/atlantis:latestduring the period from Jan 31-today then the safest action would be to ensure you're using the latest:latestimage and then rotate all tokens that Atlantis has access to.Next Steps:
All reactions