Eine ungepatchte Schwachstelle im Git-Dienst Gogs erlaubt authentifizierten Nutzern die Codeausführung auf Servern. Rapid7 veröffentlicht ein Exploit-Modul.
Der plattformübergreifende Open-Source-Dienst Gogs, der weltweit als selbstgehostete Alternative für das Software-Versionsverwaltungssystem Git eingesetzt wird, weist eine schwerwiegende Sicherheitslücke auf. Das IT-Sicherheitsunternehmen Rapid7 hat Ende Mai 2026 forensische Details zu diesem Systemfehler veröffentlicht, der es entfernten Angreifern ermöglicht, unter bestimmten Voraussetzungen beliebigen Programmcode auf dem zugrundeliegenden Server auszuführen.
Im Common Vulnerability Scoring System wird die Bedrohung mit einem Wert von 9,4 als kritisch eingestuft. Eine offizielle CVE-Kennung liegt für den Systemfehler bislang noch nicht vor. Betroffen sind nach Angaben der Analysten alle von der Software unterstützten Betriebssystem-Plattformen, was die Betriebssysteme Windows, Linux und macOS umfasst. Der Fehler betrifft die grundlegenden Mechanismen der Rechteverwaltung und der automatisierten Verarbeitung von Code-Zusammenführungen innerhalb des Dienstes.
Der technische Ablauf der Code-Injektion über Git-Rebase
Die Sicherheitslücke basiert auf einer unzureichenden Validierung von Benutzereingaben bei der Verarbeitung von Code-Abzweigungen, den sogenannten Branches. Ein zentraler Bestandteil von Git-Workflows ist das Zusammenführen von Code-Änderungen über Pull-Requests. Gogs bietet hierfür die Komfortfunktion Rebase vor dem Zusammenführen an. Beim klassischen Git-Rebase-Befehl werden einzelne Commits aus einer Feature-Abzweigung gelöst und linear auf eine andere Basis-Abzweigung aufgespielt, um eine saubere Historie des Softwareprojekts zu wahren.
Die Git-Software akzeptiert bei diesem Vorgang optional das administrative Argument –exec, über welches ein Shell-Befehl definiert werden kann, der nach jedem erfolgreichen Einspielen eines Commits automatisch ausgeführt wird. Der Sicherheitsforscher Jonah Burgess stellte fest, dass die Eingabefelder in Gogs den Namen einer Code-Abzweigung nicht ausreichend bereinigen. Ein Angreifer kann dadurch einen Branch-Namen erstellen, der dieses schadhafte Argument enthält.
„Die Schwachstelle ermöglicht es jedem authentifizierten Benutzer, eine Remotecodeausführung auf dem Server zu erreichen, indem er eine Pull-Anforderung mit einem bösartigen Branch-Namen erstellt, der das Flag –exec während des Zusammenführungsvorgangs Rebase vor dem Zusammenführen in git rebase einschleust.“
Rapid 7
Geringe Angriffshürden und die Auswirkungen auf geteilte Serverumgebungen
Ein wesentlicher Risikofaktor dieser Schwachstelle liegt in den äußerst geringen Hürden für eine erfolgreiche Ausnutzung. Der Angreifer benötigt keinerlei administrative Privilegien innerhalb der Gogs-Instanz, und es ist keine Interaktion mit anderen legitimen Benutzern des Systems erforderlich. In der Standardkonfiguration des Git-Dienstes reicht es aus, wenn ein anonymer Akteur ein neues Benutzerkonto auf einer öffentlich erreichbaren Instanz registriert. Jeder registrierte Benutzer besitzt standardmäßig das Recht, eigene Code-Repositories zu erstellen, und wird automatisch als deren Eigentümer eingetragen.
In den Repository-Einstellungen lässt sich die Rebase-Funktion über eine einfache Schaltfläche aktivieren, wodurch die gesamte Angriffskette ohne fremde Freigaben durchlaufen werden kann. In restriktiveren Umgebungen, in denen die eigenständige Erstellung von Repositories für normale Benutzer gesperrt ist, benötigt ein potenzieller Angreifer lediglich Schreibrechte für ein bereits existierendes Repository, bei dem die Rebase-Option vom Administrator freigeschaltet wurde.
Nach Schätzungen von Sicherheitsforschern sind weltweit mindestens 1.141 direkt über das Internet zugängliche Gogs-Instanzen von diesem Problem betroffen. Die tatsächliche Anzahl der gefährdeten Installationen dürfte jedoch erheblich höher liegen, da ein Großteil der Unternehmensumgebungen hinter virtuellen privaten Netzwerken oder innerhalb isolierter interner Firmennetze betrieben wird.
Fehlende Sicherheitsupdates und Handlungsempfehlungen
Trotz der Tragweite des Problems und der Tatsache, dass die Schwachstelle den Maintainern der Open-Source-Software bereits am 17. März 2026 gemeldet wurde, steht bis zum aktuellen Zeitpunkt Ende Mai 2026 kein offizieller Patch zur Verfügung. Bis zur Veröffentlichung eines fehlerbereinigten Software-Updates müssen Administratoren manuelle Schutzmaßnahmen ergreifen. Um das Risiko einer Infiltration über die Unternehmensinfrastruktur zu minimieren, wird dringend empfohlen, die Benutzerregistrierung in der zentralen Konfigurationsdatei app.ini über den Parameter DISABLE_REGISTRATION = true vollständig zu deaktivieren.
Ergänzend sollte die Erstellung neuer Repositories über den Befehl MAX_CREATION_LIMIT = 0 für unvollständig verifizierte Konten unterbunden werden. Bestehende Repositories müssen einer forensischen Überprüfung hinsichtlich ihrer Rebase-Zusammenführungseinstellungen unterzogen werden. Verschärft wird die Situation durch die Veröffentlichung eines automatisierten Metasploit-Moduls durch Rapid7. Dieses Modul automatisiert den gesamten Ablauf für Angriffe auf Linux- und Windows-Systeme, indem es temporäre Repositories erstellt oder bestehende Zugänge ausnutzt, was im Serverprotokoll bei der Löschung oft nur einen generischen HTTP-500-Fehlercode als digitalen Fußabdruck zurücklässt.