Die Integration von Künstlicher Intelligenz in Softwareentwicklungsplattformen hat zweifellos den Workflow von Entwicklern revolutioniert. Tools wie GitLab Duo, ein KI-basierter Assistent, der in GitLab eingebettet ist und von Anthropic’s Claude angetrieben wird, bieten zahlreiche Vorteile: Sie helfen bei Codevorschlägen, unterstützen bei Sicherheitstests und analysieren Merge Requests. Doch genau diese tiefe Integration hat auch neue Angriffsflächen eröffnet – wie die Sicherheitsforschung im Jahr 2025 eindrucksvoll gezeigt hat. Remote Prompt Injection in GitLab Duo entpuppte sich als gefährliche Sicherheitslücke, die es Angreifern erlaubte, private Quellcodes zu entwenden und sogar Zero-Day-Schwachstellen aus internen Diskussionen zu exponieren. Die Sicherheitsproblematik begann mit der Erkenntnis, dass GitLab Duo nicht nur den Kontext der aktuellen Seite auswertet, sondern sehr weitreichend sämtliche Inhalte wie Quellcode, Merge Request-Beschreibungen, Commit-Nachrichten oder Kommentare analysiert, um seine Antworten vorzubereiten.
Diese Offenheit führte dazu, dass sogenannte „versteckte Prompts“ – also absichtlich getarnte Anweisungen, die für einen normalen Nutzer unsichtbar sind – Duo beeinflussen und dazu bringen konnten, unerwünschte Aktionen durchzuführen. Forschende der Sicherheitsfirma Legit Security entdeckten, dass solche prompt-injizierenden Passagen, eingebettet in diversen Bereichen eines GitLab-Projekts, tatsächlich von Duo erkannt und ausgeführt wurden. Besonders perfide waren dabei die Techniken, mit denen diese schädlichen Anweisungen getarnt wurden. Um nicht direkt auffällig zu sein, wurden verschiedene Codierungsmethoden eingesetzt. Unicode-Smuggling, Base16-Kodierungen oder das Einbetten von weißen Texten durch KaTeX – einer schnellen mathematischen Typografie-Bibliothek – schufen verborgene Nachrichten, die von Duo dennoch verarbeitet wurden.
Diese komplexen Verschleierungstricks machten es für traditionelle Sicherheitsmaßnamen nahezu unmöglich, die Angriffe im Voraus zu entdecken. Durch diese versteckten Prompt-Anweisungen gelang es den Angreifern, Duo dazu zu bringen, manipulierte Antworten zu generieren, die unter anderem böswilligen Code vorschlugen oder schädliche URLs als sicher einstuften. Die Folgen für die Nutzer konnten gravierend sein: Anwender könnten durch trügerische Empfehlungen kompromittierte Bibliotheken installieren oder auf gefälschte Login-Seiten gelenkt werden, was zu weiteren Kompromittierungen führte. Eine besonders brisante Komponente dieser Schwachstelle lag in der sogenannten HTML-Injektion innerhalb der Duo-Antworten. Das System formatierte Rückmeldungen in Markdown, was an sich ein sicherer Ansatz für reichhaltige Textinhalte ist.
Allerdings wurde die Ausgabe zeilenweise gestreamt, was bedeutete, dass die HTML-Struktur des Inhalts noch nicht vollständig analysiert war, während bereits Teile rendert wurden. Diese als „progressive Markdown-Parsen“ bekannte Methode führte dazu, dass schädliche HTML-Tags, insbesondere <img>-Tags, frühzeitig als aktive Elemente verarbeitet wurden und somit Cross-Site-Scripting-Angriffe möglich waren. Trotz DOMPurify – einem beliebten HTML-Sanitizer, der viele XSS-Angriffe verhindert – konnten bestimmte Tags wie <img>, <form> oder <a> weiterhin genutzt werden, um schädliche Aktionen einzuschleusen. Angreifer konnten also nicht nur Inhalte stehlen, sondern auch Nutzer-spezifische Aktionen im Browser ausführen, was ein hohes Sicherheitsrisiko darstellt. Das größte Risiko entstand jedoch durch die enge Verknüpfung von Duo mit den Benutzerberechtigungen.
Da Duo Zugriff auf alle Daten hat, die auch der jeweilige Nutzer sehen darf – einschließlich privater Projekte –, konnte ein gut getarnter Prompt in einem öffentlich zugänglichen Projekt dazu führen, dass der Assistent automatisch Quellcode aus einem privaten, sensiblen Repository extrahierte. Über eine raffinierte Kombination der HTML-Injektion und Codierungsmechanismen wurden die entwendeten Daten in Base64 kodiert und in die URL des eingeschleusten <img>-Tags eingefügt. Beim Laden der Antwort des AI-Assistenten löste der Browser dann eine HTTP-Anfrage an einen vom Angreifer kontrollierten Server aus, welcher die vertraulichen Informationen empfing. Dieses Szenario wurde anhand eines konkreten Angriffsbeispiels demonstriert: Durch das Verstecken eines bösartigen Prompts im Quellcode eines Merge Requests eines öffentlichen Projekts konnten Angreifer die Quelle des iOS-Projekts eines privaten Repositories stehlen. Dies zeigt exemplarisch, wie weitreichend die Konsequenzen dieser Schwachstelle waren.
Selbst wenn ein Nutzer lediglich Duo um eine Rückmeldung bat, mussten ihm die daraus resultierenden Sicherheitsrisiken nicht bewusst sein. Darüber hinaus reicht das potenzielle Schadensbild weit über Quellcode hinaus. GitLab Duo hat auch Zugriff auf Issues und interne Diskussionen. So könnte ein versteckter Prompt in einem öffentlichen Projekt die unbeabsichtigte Offenlegung von vertraulichen Informationen aus Sicherheitsfragen oder gar Zero-Day-Berichten bewirken. Dies stellt nicht nur eine Gefahr für einzelne Entwickler oder Unternehmen dar, sondern birgt Risiken für die gesamte Software-Sicherheitslandschaft.
Die Schwere dieser Schwachstelle führte zu einer schnellen Reaktion von GitLab. Nach der verantwortungsvollen Offenlegung durch Legit Security im Februar 2025 bestätigte GitLab die Sicherheitslücken und veröffentlichte im Rahmen des Updates duo-ui!52 einen Patch, der das Rendering unsicherer HTML-Tags wie <img> oder <form> unterbindet, wenn diese auf externe unbekannte Domains zeigen. Damit wurde die Möglichkeit der HTML- und Prompt-Injektion effektiv unterbunden und das Risiko einer Datenexfiltration erheblich reduziert. Dieses Ereignis unterstreicht die zweischneidige Natur von KI-gestützten Entwicklungsassistenten wie GitLab Duo. Während sie die Produktivität deutlich steigern und Entwickler durch intelligente Unterstützung entlasten können, erweitern sie gleichzeitig die Angriffsfläche enorm.
Insbesondere Systeme, die Kontextinformationen aus verschiedenen Quellen zusammenführen und dabei teilweise unkuratierten oder durch Dritte beeinflussbaren Inhalt verarbeiten, müssen mit äußerster Vorsicht implementiert werden. Die Lessons Learned aus der Analyse der GitLab Duo Schwachstelle sind klar: Für AI-basierte Werkzeuge, die in sicherheitskritischen Umgebungen eingesetzt werden, ist die Behandlung von Nutzereingaben als potenziell schädlich essenziell. Es gilt nicht nur zu kontrollieren, was die KI generiert, sondern vor allem, welche Inhalte die Modelle aufnehmen und verarbeiten. Fehlende oder unzureichende Schutzmechanismen können sonst zu erheblichen Einfallstoren und Datenverlust führen. Darüber hinaus zeigt die Schwachstelle exemplarisch, wie schnell sich bekannte Sicherheitskonzepte wie Cross-Site-Scripting (XSS) durch moderne technische Konstrukte wie LLMs (Large Language Models) und dynamisches Markdown-Rendering verändern können.
Sicherheitsverantwortliche in Unternehmen müssen daher speziell für den Einsatz von KI-Systemen neue Sicherheitsrichtlinien, Monitoring- und Filtermechanismen entwickeln und implementieren. Aus Entwicklersicht empfiehlt es sich, dass AI-Assistenten in Entwicklungsumgebungen standardisierte Verfahren zur Inhaltskontrolle durchlaufen und streng limitiert werden, welche Kontextinformationen sie beziehen dürfen. Ebenso sollte der Zugriff auf sensible Daten durch mehrstufige Authentifizierungs- und Validierungsprozesse sichergestellt sein. Nur so lässt sich verhindern, dass Angreifer die mächtige Kombination aus AI-Unterstützung und menschlicher Unachtsamkeit zu ihrem Vorteil nutzen. GitLabs transpartente Kommunikation und schnelle Patchentwicklung zeigen, wie wichtig ein offener Dialog zwischen Sicherheitsforschern und Softwareherstellern ist.
Die Kooperation ist entscheidend, um schnell auf entdeckte Sicherheitslücken reagieren und langfristig Vertrauen in KI-gestützte Tools schaffen zu können. Insgesamt bringt die Geschichte von GitLab Duo wichtige Erkenntnisse für die gesamte Branche mit: Sicherheitsstrategien müssen bei zunehmender AI-Integration ständig weiterentwickelt werden, um Schutzmaßnahmen an neue Technologien anzupassen. Nur durch ganzheitliche Ansätze, die Entwicklung, Betrieb und Monitoring miteinander verbinden, kann das erhebliche Potenzial von AI-Instrumenten sicher und verantwortungsbewusst genutzt werden. Zusammengefasst zeigt die Remote Prompt Injection in GitLab Duo eindrucksvoll auf, wie modernste KI-Systeme zum Einfallstor für kritische Sicherheitsprobleme werden können. Das Szenario von Quellcode-Diebstahl über versteckte Anweisungen, komplizierte Codierungstricks und Live-HTML-Injektionen ist ein Weckruf für Entwickler, Sicherheitsverantwortliche und Unternehmensführung.
Es macht deutlich, dass bei der Integration von AI in unternehmenskritische Prozesse höchste Vorsicht und umfassende Sicherheitsmaßnahmen unerlässlich sind, um Missbrauch zu verhindern und digitale Vermögenswerte zu schützen.