GitHub repositories compromised by stolen OAuth tokens
- 19 April, 2022 07:00
Salesforce-owned PaaS vendor Heroku and GitHub have both warned that compromised OAuth user tokens were likely used to download private data from organisations using Heroku and continuous integration and testing service Travis CI, according to statements issued late last week.
It's unlikely that GitHub itself was compromised, according to the ubiquitous source code repository's blog post, since the OAuth tokens in question aren't stored by GitHub in usable formats, and more likely that they were taken from Heroku and Travis CI's applications that use the OAuth framework for authentication.
GitHub said on Friday that five specific OAuth applications were affected — four versions of Heroku Dashboard, and Travis CI (IDs 145909, 628778, 313468, 363831 and 9261). Salesforce said that, once notified by GitHub last Wednesday, it disabled the compromised OAuth tokens and the account that they came from.
"Based on the information GitHub shared with us, we are investigating how the threat actor gained access to customer OAuth tokens," Heroku's official blog post stated. "The compromised tokens could provide the threat actor access to customer GitHub repos, but not customer Heroku accounts."
Heroku urged users of affected products to immediately review their GitHub logs for any evidence of data theft, and contact Salesforce's security team if suspicious activity is detected.
Moreover, until the problem is solved, Heroku-connected applications should be disconnected from GitHub repositories, and either revoking or rotating any exposed credentials. The vendor's most recent update on the issue, published Sunday, indicated that Salesforce hasn't yet completed the revocation of all OAuth tokens, but that work on the process is proceeding.
GitHub repositories won't be affected, according to Salesforce, but the token revocations will mean that deploying new apps from GitHub to Heroku dashboard won't work until new tokens can be issued.
GitHub's assessment is that no user account data or credentials were accessed in the attack. The company said that it's in the process of alerting customers it has identified as being affected, and echoed Salesforce's call for an immediate review of all audit logs and OAuth applications.
"Our analysis of other behaviour by the threat actor suggests that the actors may be mining the downloaded private repository contents, to which the stolen OAuth token had access, for secrets that could be used to pivot into other infrastructure," GitHub said.