A weak administrator password allowed an unknown attacker to gain access to the Gentoo Linux distribution's GitHub account and lock developers out of it, the maintainers of the popular open source software said this week.
In the June 28 attack, the intruders also modified the content of Gentoo's repositories and added malicious code to it that among other things was apparently designed to wipe end user content. But various technical safeguards in place would have prevented that particular eventuality, Gentoo maintainers said in a report summarizing findings from their investigation of the incident.
The attack prompted Gentoo to declare all of its code on GitHub as being compromised and resulted in its developers being unable to use GitHub for about five days. Gentoo has since regained control of the Gentoo GitHub Organization, reverted all bad code commits to a known good state and corrected defaced content, the report noted.
Gentoo's investigation shows that the intruder or intruders gained access to an administrator password and used that to take control.
Gentoo's GitHub repository is only a backup of its code. The main repositories are stored on Gentoo hosted infrastructure and do not appear to have been impacted or at risk from the attack, the report said. The primary key that Gentoo uses to digitally sign code changes in the main repository also appears to have been untouched. So future digital signatures with the key can be trusted, the Gentoo administrators said.
Paul Ducklin, senior technologist at Sophos, points to at least three big takeaways from the Gentoo breach.
"The first is that a prompt notification goes an awful long way," he says. "Gentoo didn't beat around the bush or waste time trying to work a marketing spin into the initial report." Instead by fully disclosing what it knew and did not know about the incident up front, the breach got considerable attention and community help quickly.
Secondly, the breach is another reminder of the well-documented risks of using weak, default and easily guessable passwords. Increasingly, threat actors have been using stolen, phished and brute-forced credentials to break into corporate networks and steal data. In many cases attackers using such credentials have been able to remain undetected on victim networks for months while they have moved laterally in search of high-value targets.
Even with the Gentoo breach for instance, the compromise was only discovered because the attack was loud. If the threat actors had not blocked all access to Gentoo's GitHub repositories, the outcome might have been different.
The takeaway here—like it is for many recent breaches—is to pick proper passwords, Ducklin says. "It seems that the user whose password was guessed had fallen into the trap of using different but obviously similar passwords on multiple sites," he notes.
For example using a core password and then adding small tweaks and suffixes to the password to make it unique for different sites is not good enough. Crooks will figure out your pattern soon enough, Ducklin notes. "Use a password manager and let it choose a totally different password for each site."
Incidents like this also highlight the need for multi-factor authentication. Data breaches involving compromised user credentials are very hard to stop given the implicit trust that most current security approaches confer on users and devices inside the corporate network. So practices like strong authentication are vital to establishing user trust.
"Two factor authentication is your friend,"Ducklin says. "One-time codes for each login make it harder for the crooks."
- It's Time to Take GitHub Threats Seriously
- GitHub Among Victims of Massive DDoS Attack Wave
- Git Some Security: Locking Down GitHub Hygiene
- 10 Open Source Security Tools You Should Know