Gefährdet: Injizieren von Argumenten, die die Ausführung von Remotecodes in öffentlichen Instanzen erleichtern

Autor: Veröffentlicht 4 min de lectura 172 Lesen

Die Bilder in diesem Artikel wurden mit künstlicher Intelligenz erstellt. So veröffentlichen wir

Ein Argument Injektionsversagen in Gogs- die Git selbstgehostete Plattform geschrieben auf Go - ermöglicht die Remote-Ausführung von Code (CERs) in Internet zugänglichen Instanzen ohne offiziellen Patch zur Verfügung. Obwohl die technische Ausbeutung erfordert, dass der Angreifer ein registrierter Benutzer ist, machen Gogs' Standardeinstellungen (offene und grenzenlose Registrierung bei der Erstellung von Repositorien) diesen Defekt zu einer praktischen Bedrohung für jede öffentliche Einrichtung.

In technischer Hinsicht nutzt die Verwundbarkeit die Möglichkeit, Parameter in Anrufe an Systemtools (in diesem Fall git) durch nutzergesteuerte Namen - speziell den Namen eines Zweiges, der in einer Zuganforderung verwendet wird - zu drängen git rebase, um eine --exec-Typ-Bordmarke zu erhalten. Damit können Sie beliebige Befehle mit den gleichen Privilegien wie der Gogs-Prozess ausführen, wenn ein Repository mit der Option "Rebase vor dem Trading" fusioniert wird.

Gefährdet: Injizieren von Argumenten, die die Ausführung von Remotecodes in öffentlichen Instanzen erleichtern
Bild generiert mit IA.

Die Bedienkette ist kurz und automatisiert: ein Angreifer erstellt ein Konto (wenn die Instanz eine offene Registrierung erlaubt), erstellt ein eigenes Repository - automatisch mit der Standardkonfiguration - aktiviert die Rebase-Option in der Repo-Konfiguration und sendet dann einen Request Pull mit einem Zweig, dessen Name die Nutzlast enthält. Von dort aus löst die Fusionsoperation die Ausführung des schädlichen Befehls aus.

Die potenziellen Auswirkungen sind breit: von der Kompromissierung des Gogs-Servers und dem Zugriff auf alle gehosteten (einschließlich privater) Repositories, über das Ablegen von Anmeldeinformationen, Tokens und SSH-Tasten, die sich seitlich innerhalb der internen Netzwerke bewegen und den veröffentlichten Quellcode ändern. Diese Reichweite macht jede verletzliche Instanz eine kritische Eingangstür für Angreifer, die persistenten Zugriff oder bösartige Code-Verteilung suchen.

Die Anzahl der ausgestellten Instanzen ist beträchtlich: Organisationen, die das Internet überwachen, finden Tausende von öffentlich zugänglichen Gogs-Servern. Shadowserver verzeichnet mehr als 2.400 Fälle auf seinem öffentlichen Panel, mit Konzentrationen in Asien und Europa, und Recherchen auf Druckmaschinen wie Shodan zeigen auch mehr als tausend PIs mit Gogs' Druck. Um diese Quellen zu konsultieren, hilft die Risikobewertung einer Organisation: Shadowserver - Gogs exponiert und die Analyse der von Rapid7 veröffentlichten Originalforschung liefert weitere technische Details zum Konzepttest und der Angriffskette: Rapid7 - Authenticated CERs via Argument Injektion in Gogs.

Die Sicherheitslücke wurde im März bei Gogs' Betreuern gemeldet, und obwohl anerkannt, gibt es noch keine offizielle Korrektur für die betroffene Route. Gogs leidet bereits unter den überholten CER-Schwachstellen und es gab Patches für frühere Fehler, die die Bedeutung sofortiger Minderungsmaßnahmen unterstreichen, wenn der Patch nicht verfügbar ist.

Empfohlene sofortige Minderung: Deaktivieren Sie das offene Register (Eingabe DISABLE _ REGISTRATION = true), setzen Sie ein Limit auf die Erstellung von Repositories (MAX _ CREATION _ LIMIT zu einem angemessenen Wert oder 0), deaktivieren Sie die Option "Rebase vor dem Trading" in der globalen Konfiguration oder in kritischen Repositories und beschränken Sie den administrativen und fusionierenden Zugriff auf vertrauenswürdige Nutzer. Darüber hinaus sollten Sie Gogs-Instanzen hinter einem VPN oder Bastion setzen, den Zugriff durch Firewalls auf bekannte IP-Bereiche beschränken und eine starke Authentifizierung und Identitätsprüfung für neue Konten anwenden.

Gefährdet: Injizieren von Argumenten, die die Ausführung von Remotecodes in öffentlichen Instanzen erleichtern
Bild generiert mit IA.

Parallel zu den Konfigurationsmaßnahmen ist es wichtig, die Eindämmung und Detektion zu stärken: Git-Prozesse zu überwachen, Protokolle auf der Suche nach Pilzen zu prüfen, die ungewöhnliche Verzögerungen einschließen, die Massenerstellung neuer Repositorien oder Konten zu überprüfen, Änderungen in Repositorien zu scannen, die nicht den normalen Workflows entsprechen und ungewöhnliche ausgehende Verkehrsdaten vom Server zu erkennen, die Exfiltration anzeigen könnten. Wenn die Verpflichtung vermutet wird, isolieren Sie die Instanz, sammeln Sie Geräte für forensische Analyse (Logs, Festplattenbilder, Prozesse), sofort entfernen Sie Token und betroffenen Schlüssel und rekonstruieren Sie von sauberen Kopien, falls erforderlich.

Empfehlungen zur mittelfristigen Strategie: Bestandsaufnahme aller Gogs in der Organisation (einschließlich der von Teams außerhalb der IT erstellten), regelmäßige öffentliche Expositionsscans planen, Strategien implementieren, die unsichere Einstellungen durch Standardeinstellungen und Wertmigration auf aktive Wartungsplattformen oder verwaltete Dienste verhindern, wenn die Gitter- und Auditierungskapazität nicht intern gewährleistet ist. Betrachten Sie auch die Isolierung von Code-Management-Diensten in Containern oder Maschinen mit minimalen Privilegien, um den Strahlradius bei Ausfall zu reduzieren.

Schließlich, und obwohl es heute keinen Patch für diese spezifische Route gibt, sollten Administratoren nicht warten: Die oben genannten Konfigurations- und Kontrollmaßnahmen reduzieren die Exposition und das unmittelbare Risiko deutlich. Achten Sie auf offizielle Gogs und Sicherheits-Community-Kanäle, um alle Sicherheits-Updates anzuwenden, sobald es veröffentlicht wird und bewerten Sie die Auswirkungen dieser Schwachstelle auf Ihre Software-Lieferkette.

Deckung

Verwandte Artikel

Weitere Neuigkeiten zum selben Thema.