Ontwikkelaarsplatform Github gaat zijn gehele infrastructuur controleren op verdachte handelingen. Door een beveiligingsfout konden kwaadwillenden extra rechten krijgen en zo eventueel eigen code aan een project toevoegen.
De beveiligingsfout heeft te maken met de manier waarop Rails, het framework waarop onder meer Github is gebaseerd, omgaat met het toewijzen van attributen. Hierdoor kunnen buitenstaanders waarden aanpassen in projecten van ontwikkelaars die zich niet wapenen tegen mass assignment en zo zichzelf volledige lees- en schrijfrechten geven. Hoewel ontwikkelaars zich kunnen wapenen tegen dit misbruik, zal dit in de praktijk niet vaak gebeuren.
Als gevolg hiervan waren veel Rails-projecten - en dus ook alle Github-projecten - vatbaar voor misbruik. De fout kon worden misbruikt op alle Rails-sites waar de input niet goed wordt afgevangen. Zo waren onder meer de Linux-kernel, Postereous, Speakerdeck, Scribd en het ontwikkelaarsplatform van Github zelf 'kwetsbaar'. Projecten kunnen worden afgeschermd voor derden en binnen een project kunnen verschillende rollen worden toegewezen. Door de fout konden kwaadwillenden wijzigingen aan de code doorvoeren en deze committen of zelfs het gehele project verwijderen.
De fout die aan het probleem ten grondslag ligt, werd enkele dagen geleden ontdekt en kenbaar gemaakt door de Russische hacker Egor Homakov. Om zijn bevinding kracht bij te zetten, heeft Homakov de kwetsbaarheid misbruikt om zijn public key te koppelen aan het ontwikkelaarsteam van Rails. Hierdoor kon hij zich voordoen als Rails-ontwikkelaar en was hij in staat daadwerkelijk een nieuw bestand toe te voegen aan het Rails-project. Het is niet bekend waarom de hacker voor deze aanpak heeft gekozen. Hoewel hij in een eerder stadium al wel contact had gehad met Github over zijn ontdekking, heeft hij mogelijk uit onvrede over de aanpak van de Rails-ontwikkelaars ervoor gekozen zijn tweede ontdekking niet eerst te rapporteren.
Homakov had zijn eerste ontdekking aanvankelijk via Github gedeeld, maar de Rails-ontwikkelaars stelden dat dit geen beveiligingsprobleem van Rails was en sloten zijn topic. Hun manier van reageren kwam de ontwikkelaars achter Rails op de nodige kritiek te staan.
Github heeft inmiddels een fix uitgerold die moet voorkomen dat kwaadwillenden op deze manier nog extra rechten kunnen krijgen op bij Github gehoste projecten. Omdat de gevolgen van eventueel misbruik verstrekkend zijn heeft het ontwikkelaarsplafform aangekondigd dat het de complete codebase naloopt om te kijken of het lek eerder is misbruikt.
Github wordt gebruikt door ontwikkelaars als hostingplatform voor hun ontwikkelcode, die vanaf hun werkplek op eenvoudige wijze kan worden gecommit naar het Github-project. Het platform voorziet hierbij in versiebeheer en een eventtracker.