GitHub revokes duplicate SSH auth keys generated by keypair library
Git client GitKraken used the affected library
GitHub has revoked all SSH keys used in a popular Git client after discovering the software the client used duplicated those keys.
Developer Axosoft warned GitHub about a vulnerability in a dependency of its popular GUI client GitKraken, according to GitHub CSO, Mike Hanley. GitHub found that an underlying issue with a dependency, called keypair, resulted in the GitKraken client generating weak SSH keys.
The issue was flagged to GitHub on September 28 and affects versions 7.6.x, 7.7.x, and 8.0.0 of the GitKraken client.
GitKraken disclosed the flaw, saying a team at the company discovered a bug in the open source SSH key generation library that was implemented in versions 7.6.x, 7.7.x, 8.0.0, released between 12 May and 27 September 2021.
“This flaw resulted in a weaker form of public SSH keys being created. Weak keys are created with low entropy, meaning there is a higher probability of key duplication,” said the GitKraken team in a statement.
"A bug in the pseudo-random number generator used by keypair versions up to and including 1.0.3 could allow for weak RSA key generation. This could enable an attacker to decrypt confidential messages or gain authorized access to an account belonging to the victim. We recommend replacing any RSA keys that were generated using keypair version 1.0.3 or earlier," said a Keypair advisory.
Cloud migration of your data infrastructure
Explore why the most efficient way forward is data-drivenFree download
The GitKraken engineering team has fixed this issue as of version 8.0.1 by replacing the previous SSH key generation library with a new one, according to the disclosure.
Hanley said GitHub also investigated the possibility that weakly generated keys used on GitHub came from other third-party clients and integrators also using this vulnerable library.
“The nature of this vulnerability prevents us from identifying all possible weak SSH keys produced by this library and vulnerable clients that used it. Out of an abundance of caution, we’ve also revoked other potentially weak keys associated with these scenarios and blocked their use,” he added.
Hanley added that GitHub will directly notify users whose keys have been revoked. “This was not the result of a compromise, data breach, or other data exposure event of GitHub or our systems, but rather an issue with a library commonly used to generate SSH keys for use with GitHub,” he said.
Hanley recommended developers review SSH keys linked to any GitHub account and rotate those that could have been generated using the vulnerable/insecure library. GitHub posted a tutorial for this process here.
GitHub Enterprise Server deployment administrators review the SSH keys added to their instances by reviewing public_key.create actions in the site admin dashboard audit log.
Shining light on new 'cool' cloud technologies and their drawbacks
IONOS Cloud Up! Summit, Cloud Technology Session with Russell BarleyWatch now
Build mobile and web apps faster
Three proven tips to accelerate modern app developmentFree download
Reduce the carbon footprint of IT operations up to 88%
A carbon reduction opportunityFree Download
Comparing serverless and server-based technologies
Determining the total cost of ownershipFree download