GitHub wird voraussichtlich eine Zwei-Faktor-Authentifizierung (2FA) für alle Entwickler verlangen, die Code zu einem Projekt auf der Plattform beitragen, ein Schritt, der die Software-Lieferkette stärken soll.
Die Microsoft-eigene Code-Hosting-Plattform kündigte im vergangenen Mai an, dass sie beabsichtige, 2FA bis Ende 2023 obligatorisch zu machen, obwohl sie den Prozess früher in diesem Jahr für die Top-100-Pakete begann, gefolgt von anderen „High-Impact“-Paketen im November. Diese Pakete wurden durch mehr als 1 Million wöchentliche Downloads oder mehr als 500 Follower (Projekte, die das betreffende Paket verwenden) definiert.
Jetzt hat GitHub bestätigt, dass eine plattformweite Implementierung am 13. März 2023 (in vier Tagen) live gehen wird, ein Prozess, der im Laufe des restlichen Jahres schrittweise auf verschiedene Gruppen von Entwicklern und Projektadministratoren ausgeweitet wird.
Lieferanten
Mit rund 100 Millionen Entwicklern ist GitHub ein zentraler Bestandteil der globalen Software-Lieferkette. Und während sich die Besorgnis über die Sicherheit von Software-Lieferketten seit einiger Zeit vervielfacht hat, hat eine Reihe hochkarätiger Angriffe in den letzten Jahren das Thema weltweit an die Spitze der politischen Agenda gebracht. Dazu gehören der Hack des US-Softwareunternehmens SolarWinds im Jahr 2020, der eine große Anzahl von Regierungsbehörden und Unternehmen betraf, die die Software verwendeten, sowie eine kritische Log4Shell-Schwachstelle, die in einem beliebten Open-Source-Protokollierungstool namens Log4j auftauchte.
Solche hochkarätigen Sicherheitsvorfälle veranlassten die Biden-Regierung im Jahr 2021 zum Handeln, als sie eine Durchführungsverordnung zur Sicherung der Cyber-Abwehr des Landes erließ. Und letzte Woche veröffentlichte die Regierung eine neue Cybersicherheitsstrategie, die Aufrufe an große Technologieunternehmen enthielt, mehr Verantwortung dafür zu übernehmen, dass ihre Systeme robust sind, etwas, bei dem die obligatorische 2FA einen wesentlichen Beitrag leisten wird.
Insbesondere Open-Source-Software war in den letzten Jahren ein wichtiger Schwerpunkt der Cybersicherheitsbemühungen der Abteilung, zum großen Teil aufgrund ihrer Allgegenwart. Tatsächlich enthält die überwiegende Mehrheit der Software zumindest einige Open-Source-Komponenten, und viele dieser Komponenten sind das Werk eines Entwicklers oder von Entwicklern, die in ihrer Freizeit mit wenig finanzieller Unterstützung daran arbeiten.
Vor diesem Hintergrund hat GitHub im vergangenen Jahr die 2FA-Agenda vorangetrieben, um die Wahrscheinlichkeit zu verringern, dass große Open-Source-Projekte von schlechten Akteuren durch Social Engineering oder Übernahmeversuche auf ähnlichen Konten kompromittiert werden.
diskrete Subtraktion
Der abgestufte Ansatz von GitHub zur Durchsetzung von 2FA ist ein kalkulierter Versuch, sicherzustellen, dass jeder, der sich für den Dienst anmelden muss, dies bereitwillig und rechtzeitig tut.
„Diese schrittweise Einführung wird es uns ermöglichen, sicherzustellen, dass Entwickler erfolgreich beitreten können, indem wir bei Bedarf Anpassungen vornehmen, bevor wir im Laufe des Jahres größere Pools skalieren“, schrieb GitHub in einem Blogbeitrag. „GitHub ist von zentraler Bedeutung für die Software-Lieferkette, und die Sicherung der Software-Lieferkette beginnt beim Entwickler.“
Entwickler, die während des anfänglichen 2FA-Registrierungs-Pushs angesprochen wurden, erhalten eine E-Mail und sehen auch ein Banner auf ihrem GitHub-Dashboard, das sie zur Registrierung auffordert. Sie haben dann 45 Tage Zeit, um die Zwei-Faktor-Authentifizierung zu aktivieren, und werden während dieser Zeit regelmäßig aufgefordert, sich daran zu halten. Wenn 2FA nicht innerhalb dieser 45 Tage konfiguriert wird, werden sie aufgefordert, 2FA zu aktivieren, wenn sie das nächste Mal versuchen, auf ihr GitHub-Konto zuzugreifen, obwohl sie die Option haben, dies für eine weitere Woche „aufzuschieben“. Wenn sie dann Zugriff auf irgendeinen Aspekt ihres GitHub-Kontos haben möchten, einschließlich der Möglichkeit, Code zu veröffentlichen, haben sie keine andere Wahl, als 2FA einzurichten.
GitHub-Benutzer können ihren eigenen 2FA-Mechanismus aus SMS, physischen Sicherheitsschlüsseln, externen Authentifizierungs-Apps und der mobilen GitHub-App auswählen, während GitHub den Benutzern rät, mehr als eine 2FA-Methode als ausfallsichere Maßnahme zu aktivieren.

GitHub 2FA in Aktion Bildnachweis: github
Es ist erwähnenswert, dass die Zwei-Faktor-Authentifizierungszahlung nicht mit der Erstregistrierung endet. Diejenigen, die 2FA eingerichtet haben, erhalten nach 28 Tagen eine weitere Aufforderung, die 2FA-Methode zu validieren, die verhindern soll, dass Entwickler ihre Konten aufgrund einer falsch konfigurierten Authentifizierungs-App oder einer falschen Eingabe einer Mobiltelefonnummer sperren. Wenn der Benutzer sein Konto zu diesem Zeitpunkt nicht authentifizieren kann, wird er aufgefordert, die 2FA-Methode zurückzusetzen, ohne den Zugriff auf sein Konto zu verlieren.
In Bezug darauf, welche Entwickler damit rechnen können, ab dem 13. März 2FA-Ansprüche zu erhalten, sagte GitHub zuvor, dass es verschiedene Datenpunkte berücksichtigen wird, wie z. B. die Häufigkeit des Postens, ob sie Administratoren in Organisationen sind und ob sie zu mehr Popularität beitragen öffentliche und private Depots.
Nach diesem ersten Start sagte GitHub, dass es alle gewonnenen Erkenntnisse bis 2023 umfassender anwenden werde.