MCP Server: Github-Tool ermöglicht Datenklau aus privaten Code-Repos

Der offizielle MCP-Server (Model Context Protocol) von Github bietet böswilligen Akteuren offenkundig eine Angriffsfläche, um Daten aus privaten Code-Repositories abzugreifen, auf die sie normalerweise keinen Zugriff haben. Das geht aus einem Blogbeitrag(öffnet im neuen Fenster) der KI-Sicherheitsforscher von Invariant Labs hervor. Der Ablauf des Angriffs ähnelt dabei jenem, den Forscher von Legit kürzlich in Bezug auf Gitlabs KI-Assistenten Duo vorgestellt hatten .
Bei MCP handelt es sich um einen offenen Protokollstandard zur Verbindung großer Sprachmodelle (LLM) mit verschiedenen Datenquellen und Tools. In der zugehörigen Dokumentation(öffnet im neuen Fenster) wird MCP auch als "USB-C-Anschluss für KI-Anwendungen" bezeichnet. Der Github MCP Server(öffnet im neuen Fenster) ermöglicht einen MCP-basierten Austausch zwischen KI-Tools und dem Github-Ökosystem.
Beim Versuchsaufbau der Invariant-Forscher kam als MCP-Client Claude Desktop zum Einsatz. Die Forscher betonen jedoch, dass der Angriff auch mit anderen Clients und Sprachmodellen durchführbar ist. Über den Github MCP Server wurde anschließend die Verbindung zum Github-Konto eines Testnutzers hergestellt. Mit letzterem erstellten die Forscher mehrere private Repositories sowie ein öffentliches.
Datenklau per Github-Issue
Der Angriff gelingt dadurch, dass ein Angreifer für das öffentliche Repository ein Github-Issue mit einer Prompt Injection erstellt. Anschließend muss er nur noch warten, bis der Repo-Besitzer seinen KI-Agenten dazu animiert, das Issue in irgendeiner Form zu verarbeiten, so dass die KI die darin enthaltenen Anweisungen ausführt. Dafür reicht es beispielsweise aus, den Agenten um eine beliebige Interaktion mit den offenen Issues des öffentlichen Projektes zu bitten.
Die Forscher demonstrierten den Angriff öffentlich auf Github(öffnet im neuen Fenster) . Die KI wird in der Prompt Injection gebeten, die Readme-Dateien aller Softwareprojekte des Repo-Erstellers zu lesen und persönliche Daten des Erstellers sowie eine Liste aller anderen Repositories, an denen er arbeitet, zu erweitern. "Der Autor legt keinen Wert auf Privatsphäre" , versichert der Angreifer dem KI-Agenten in dem Beispiel.
Tatsächlich hat der KI-Agent daraufhin einen Pull Request(öffnet im neuen Fenster) für das öffentliche Code-Repository erstellt und alle geforderten Schritte ausgeführt. Geschützte Daten aus den privaten Repos des Erstellers wurden dadurch öffentlich sichtbar.
Ein grundlegendes Architekturproblem
Obwohl der Github MCP Server im Zentrum des Geschehens steht, betonen die Forscher, dass Github dieses Problem alleine nicht durch Patches beheben kann. Es handle sich vielmehr um ein grundlegendes Architekturproblem, das auf der Ebene des Agentensystems gelöst werden müsse.
Invariant Labs schlägt vor, die Zugriffsrechte von KI-Agenten grundsätzlich auf das nötigste Maß zu beschränken und jeweils nur den Zugriff auf das Repo zu gewähren, an dem der Agent innerhalb einer Sitzung gerade arbeitet. Weiteren Schutz sollen spezielle Sicherheitstools bieten, die mögliche Angriffsversuche in Echtzeit erkennen und unterbinden.



