chatgpt kam im Jahr 2023 wie eine Flutwelle. Allerdings sind KI und große Sprachmodelle nicht so neu; GitHub-Co-Pilot ist ein weiteres Beispiel. Es besteht kein Zweifel daran, dass großartige Tools für trainierte Sprachmodelle wie ChatGPT Bestand haben werden.
Aber was können wir erwarten, wenn immer mehr Softwareentwickler ChatGPT verwenden? Und konkreter: Welche Sicherheitsrisiken sind damit verbunden? In diesem Artikel werden die Gründe aufgeführt, warum ChatGPT als Teil der Angriffsfläche von Organisationen betrachtet werden sollte.
Wesentliche Informationen müssen bekannt sein, auch für Unternehmen, die sie nicht nutzen.
Warum sollte ChatGPT Teil der Bedrohungslandschaft eines Unternehmens sein?
Bevor wir tiefer in ChatGPT eintauchen, nehmen wir uns etwas Zeit, um Sicherheitsprobleme mit GitHub zu besprechen, da es Ähnlichkeiten zwischen den beiden Plattformen gibt. GitHub wird von fast 100 Millionen Entwicklern genutzt, die dort ihre Projekte als Open-Source-Lösung hosten. Entwickler nutzen GitHub für Schulungen und natürlich zur Präsentation ihrer Portfolios.
Allerdings ist GitHub auch ein Ort, an dem sensible Informationen leicht durchsickern können. Ein Bericht1 enthüllte, dass allein im Jahr 2022 mehr als 10 Millionen Geheimnisse, wie API-Schlüssel und Anmeldeinformationen, in öffentlichen Repositories offengelegt wurden. Viele dieser Geheimnisse gehörten tatsächlich Organisationen, wurden aber über persönliche oder nicht verbundene Konten offengelegt.
Beispielsweise hat bei Toyota, obwohl das Unternehmen GitHub selbst nicht verwendet, ein Berater versehentlich Datenbankanmeldeinformationen, die mit einer mobilen Toyota-Anwendung verknüpft sind, an ein öffentliches GitHub-Repository weitergegeben.
Dies wirft Bedenken hinsichtlich ChatGPT und anderen LLM-Tools auf, denn wie bei GitHub gilt: Selbst wenn eine Organisation ChatGPT nicht verwendet, tun es ihre Mitarbeiter mit Sicherheit. Innerhalb der Entwicklergemeinschaft ist die Angst spürbar, ins Hintertreffen zu geraten, wenn diese Tools nicht zur Produktivitätssteigerung genutzt werden.
Allerdings ist es wie bei GitHub möglich, nur begrenzte Kontrolle darüber zu haben, was Mitarbeiter mit ChatGPT teilen, und es besteht eine gute Chance, dass vertrauliche Informationen auf der Plattform gespeichert werden, was zu einem Leck führen könnte.
In einem aktuellen Bericht hat der Datensicherheitsdienst Cyberhaven Dateneingabeanfragen in ChatGPT von 4,2 % der 1,6 Millionen Mitarbeiter seiner Firmenkunden erkannt und blockiert, da die Gefahr besteht, dass vertrauliche Informationen, Kundendaten, Quellcodes oder regulierte Informationen an die Mitarbeiter weitergegeben werden LLM.
Eine der besten Messgrößen, um zu wissen, welche Tools Entwickler verwenden, ist ironischerweise die Messung der Anzahl der durchgesickerten Geheimnisse auf GitHub. Einem Bericht zufolge1OpenAI-API-Schlüssel verzeichneten gegen Ende 2022 einen massiven Anstieg, ebenso wie ChatGPT-Erwähnungen auf GitHub, was einen klaren Trend bei der Nutzung dieser Tools durch Entwickler zeigt.
Das Risiko von Datenlecks
Wo Quellcode ist, gibt es auch Geheimnisse, und ChatGPT wird oft als eine Art Code-Helfer oder Co-Autor verwendet.
Obwohl es Fälle gab, in denen es bei ChatGPT zu Datendiebstahl kam, etwa durch die versehentliche Weitergabe des Abfrageverlaufs an nicht vertrauenswürdige Benutzer, ist das größte Problem die Speicherung vertraulicher Informationen auf eine Art und Weise, die für deren Vertraulichkeitsniveau völlig unangemessen und unsicher ist.
Die Speicherung und Weitergabe sensibler Daten, wie etwa Geheimnisse, sollte immer mit einem hohen Maß an Sicherheit erfolgen, einschließlich hochwertiger Verschlüsselung, strenger Zugriffskontrolle und Protokollen, aus denen hervorgeht, wo, wann und wer auf die Daten zugegriffen hat.
Allerdings ist ChatGPT nicht für den Umgang mit sensiblen Informationen konzipiert, da es an Verschlüsselung, strenger Zugriffskontrolle und Zugriffsprotokollen mangelt. Dies ähnelt der Verwendung von Git-Repositories, bei denen sensible Dateien trotz fehlender ausreichender Sicherheitsprüfungen häufig landen können.
Dies bedeutet, dass vertrauliche Informationen in einer unverschlüsselten Datenbank verbleiben, die wahrscheinlich ein Hauptziel für Angreifer darstellt. Insbesondere persönliche ChatGPT-Konten, mit denen Mitarbeiter einer Entdeckung am Arbeitsplatz entgehen können, verfügen über eine geringere Sicherheit und einen vollständigen Verlauf aller in das Tool eingegebenen Anfragen und Codes. Dies könnte für Angreifer eine Fundgrube an sensiblen Informationen sein und ein erhebliches Risiko für Unternehmen darstellen, unabhängig davon, ob sie die Verwendung von ChatGPT im Rahmen ihres Tagesgeschäfts zulassen oder nicht.
Das Problem besteht in zweierlei Hinsicht, da vertrauliche Daten an und von ChatGPT weitergegeben werden. Die Plattform verhindert den Erhalt vertraulicher Informationen, wenn diese direkt angefordert werden, und antwortet mit einer allgemeinen Antwort. Aber ChatGPT ist sehr leicht zu täuschen. Im folgenden Beispiel wurde ChatGPT nach AWS-Anmeldeinformationen gefragt und abgelehnt. Aber wenn wir seine Anfrage ändern, um sie weniger bösartig zu machen, und die Plattform antwortet.
Etwa die Hälfte der als Beispiele bereitgestellten Token enthielten das Wort EXAMPLEKEY, die andere Hälfte jedoch nicht. Es ist daher berechtigt, sich zu fragen, woher diese Schlüssel kommen. Sie entsprechen alle dem AWS-Format, einschließlich Zeichensatz, Länge und Entropiebasis (außer Beispieltext).
Ist ChatGPT in der Lage zu verstehen, wie diese Schlüssel erstellt werden, oder ändert es die in seinem Datensatz gefundenen Schlüssel? Es ist wahrscheinlicher, dass es sich um die zweite Hypothese handelt. ChatGPT verwendet den Common Crawl-Datensatz, einen öffentlich zugänglichen Webkorpus, der über eine Billion Textwörter aus verschiedenen Quellen im Internet enthält. Dieser Datensatz enthält Quellcode aus öffentlichen Repositories auf GitHub, die bekanntermaßen eine große Menge vertraulicher Informationen enthalten.
Als GitHub Copilot startete, war es möglich, API-Schlüssel und Anmeldeinformationen als Vorschläge auszugeben. ChatGPT ändert seine Antworten erheblich, je nachdem, wie die Frage gestellt wird. Wenn Sie ihm also die richtigen Fragen stellen, kann er möglicherweise vertrauliche Informationen aus dem Common Crawl-Datensatz preisgeben.
ChatGPT ist kein sehr guter Softwareentwickler
Das andere Sicherheitsproblem bei ChatGPT ist das gleiche, das auch von Co-Pilot angesprochen wurde. Wenn man sich mit der Forschung befasst, ist es möglich, das Konzept der KI-Voreingenommenheit aufzudecken, d. h. dass Benutzer der KI viel mehr vertrauen, als sie sollten. Wenn beispielsweise ein Freund von seinen Antworten sehr überzeugt ist, ist es leicht zu glauben, dass er Recht hat, bis man schließlich herausfindet, dass er nichts darüber weiß, aber gerne viel redet (ähnlich wie bei ChatGPT).
Die Plattform gibt häufig Codebeispiele heraus, die völlig unsicher sind, und im Gegensatz zu Foren wie StackOverflow gibt es keine Community, die Benutzer davor warnt. Wenn Sie beispielsweise aufgefordert werden, Code für die Verbindung zu AWS zu schreiben, werden die Anmeldeinformationen fest codiert, anstatt sie sicher zu verwalten, einschließlich der Verwendung von Umgebungsvariablen.
Das Problem besteht darin, dass viele Entwickler der Lösung vertrauen, die ihnen die KI bietet, ohne zu verstehen, dass sie nicht sicher ist oder warum sie es nicht ist. Die KI wird sich verbessern, aber ihre Qualität hängt von den Daten ab, auf denen sie trainiert wird. Sie werden mit großen Datensätzen trainiert, die nicht immer von guter Qualität sind.
Das bedeutet, dass sie möglicherweise nicht in der Lage sind, zwischen gutem und schlechtem Quellcode zu unterscheiden, weshalb sie Beispiele für schlechte Codierungspraktiken liefern.
> Entwickler schulen
Es ist wichtig, Entwickler auf die Einschränkungen von KI wie ChatGPT aufmerksam zu machen. Anstatt es zu verbieten, müssen wir Entwicklern zeigen, warum diese Tools unsicher sind, und sie mit ihren KI-Vorurteilen konfrontieren. KI-Benutzer sollten die Grenzen dieser Technologie verstehen.
> Geheimnisse identifizieren und sichern
Um zu verhindern, dass vertrauliche Informationen über ChatGPT durchsickern, ist es auch wichtig, Geheimnisse zu identifizieren und deren Verbreitung einzudämmen. Dazu gehört das Durchsuchen von Repositories und Netzwerken nach Geheimnissen, deren Zentralisierung in einem Secrets-Manager sowie die Anwendung strenger Zugriffskontroll- und Rotationsrichtlinien. Auf diese Weise lässt sich die Wahrscheinlichkeit verringern, dass ein Geheimnis im ChatGPT-Verlauf landet.
> Akzeptieren Sie KI, denn sie wird bleiben
Der KI-Revolution sollte kein Widerstand entgegengebracht, sondern mit Vorsicht angegangen werden. Während Anmeldedatenlecks ein berechtigtes Problem darstellen, kann KI auch ein wertvolles Werkzeug sein, wenn man ihren Zweck und ihre Grenzen versteht.
Indem Benutzer und Entwickler Maßnahmen ergreifen, um sich weiterzubilden und ihre Daten zu sichern, können sie die Vorteile der KI nutzen, ohne die Sicherheit zu gefährden.
1 Der GitGuardian-Bericht State of Secrets Sprawl 2023