The Illusion of Secure LLM Code: Closing the Security Gap via Iterative Reprompting
Diese Studie zeigt auf, dass KI-gestützte Programmierassistenten standardmäßig daran scheitern, sicheren Authentifizierungscode zu generieren, was verdeutlicht, dass nur iteratives Reprompting mit Selbstauditierungs-Schleifen – und nicht Single-Shot-Prompts – die umfassende Sicherheitsarchitektur erreichen kann, die den NIST-Standards entspricht.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie haben gerade einen brandneuen, superintelligenten Roboter-Assistenten gekauft. Sie bitten ihn, Ihnen ein Haus zu bauen, und er wirft in Sekundenschnelle eine wunderschöne Struktur mit Wänden, einem Dach und einer Haustür zusammen. Es sieht perfekt aus! Aber hier ist der Haken: Der Roboter hat gelernt, wie man Häuser baut, indem er Millionen alter Baupläne aus dem Internet gelesen hat, darunter auch solche aus den 1980er Jahren, bei denen die Menschen vergessen haben, die Hintertür abzuschließen oder Pappkarton für das Fundament verwendeten. Der Robot ist großartig darin, Dinge so aussehen zu lassen wie ein Haus, aber er weiß nicht immer, wie man ein Haus baut, das Einbrecher tatsächlich draußen hält.
Dies ist die Welt der Large Language Models (LLMs) in der Softwareentwicklung. Dies sind die KI-„Roboter“, die für uns Computercode schreiben. Sie werden berühmt dafür, Programmierern dabei zu helfen, Apps schneller zu erstellen. Aber über ihnen schwebt eine große Frage: Wenn Sie eine KI bitten, eine digitale „Haustür“ für eine Website (ein sogenanntes Authentifizierungssystem) zu bauen, wird sie dann tatsächlich eine Festung bauen oder nur eine wackelige Papptür, die Einbrecher einfach eintreten können? Wir kümmern uns darum, weil fast alles, was wir online tun – Banking, soziale Medien, Einkaufen – auf diesen digitalen Türen basiert. Wenn die KI eine schwache Tür baut, sind unsere Geheimnisse nicht sicher.
Der Große Digitale Türtest
In dieser Arbeit beschlossen Forscher, die Rolle des „Worst-Case-Szenario“-Entwicklers einzunehmen. Sie wollten nicht sehen, was die KI leisten kann, wenn ein menschlicher Experte ihr Sicherheitstipps ins Ohr flüstert. Sie wollten sehen, was die KI macht, wenn sie allein gelassen wird oder nur vage Hinweise erhält. Sie richteten ein riesiges Experiment ein, um fünf der populärsten KI-Coding-Assistenten zu testen (darunter Tools wie GitHub Copilot, OpenAI Codex und Modelle von Google).
Ihr Ziel war simpel: Diese KIs dazu bringen, ein Login-System für eine Web-App zu bauen. Dann agierten sie wie ein Team digitaler Einbrecher, um zu sehen, ob sie einbrechen könnten.
Die Forscher versuchten vier verschiedene Wege, die KI anzuweisen, die Tür zu bauen:
- Der „Mach es einfach“-Ansatz (Basis-Prompt): Sie baten die KI, „ein sauberes Login-System zu bauen“. Keine Erwähnung von Sicherheit. Nur „lass es funktionieren“.
- Der „Sei nett“-Ansatz (Sicherer Prompt): Sie fügten einen winzigen Anstoß hinzu: „Mache es sicher und sauber.“
- Der „Expertenhandbuch“-Ansatz (NIST-basierter Prompt): Sie gaben der KI ein spezifisches Regelwerk (die NIST SP 800-63B Richtlinien, welche wie die offiziellen Regierungsstandards für digitale Schlösser sind) und sagten ihr, sie solle diese Regeln befolgen.
- Der „Mach es nochmal“-Ansatz (Iteratives Reprompting): Dies war die Wendung. Nachdem die KI die Tür gebaut hatte, händigten die Forscher ihr das Regelwerk erneut aus und sagten: „Hey, schau dir an, was du gerade gebaut hast. Prüfe es gegen die Regeln. Was hast du übersehen? Jetzt, behebe es.“
Das Ergebnis: Die Illusion der Sicherheit
Die Erkenntnisse waren etwas erschreckend, aber auch sehr klar.
Wenn die Forscher den „Mach es einfach“-Ansatz verwendeten, baute die KI funktionierende Türen, aber sie waren voller Löcher. Der Code funktionierte, aber er vergaß oft, die Fenster zu verriegeln. Er verhinderte nicht, dass Leute versuchten, Millionen Mal Passwörter zu erraten (Brute-Force-Angriffe), er versteckte die „Schlüssel“ (Session-Cookies) nicht richtig und verwendete manchmal schwache Schlösser (veraltetes Password-Hashing). Es war, als würde man ein Haus mit einer Holztür bauen, an der ein „Drücken“-Schild hängt, aber kein Riegel vorhanden ist.
Selbst wenn sie den „Sei nett“-Ansatz verwendeten (nur nach „sicherem“ Code fragen), wurde die KI nicht viel besser. Es schien, als würde sie unter „sicher“ lediglich verstehen, dass es „nicht abstürzt“, nicht aber, dass es „unmöglich zu knacken“ ist.
Als sie der KI das Expertenhandbuch (die NIST-Regeln) gaben, wurde es besser. Die KI begann, einige Türschlösser und bessere Schlösser hinzuzufügen. Sie folgte den Anweisungen, Passwörter länger zu machen und Konten nach zu vielen Fehlversuchen zu sperren. Aber hier kommt der entscheidende Punkt: Selbst mit dem Regelwerk in der Hand übersah die KI immer noch einige entscheidende Teile des Sicherheitsplans. Sie baute eine starke Haustür, ließ aber das hintere Tor weit offen. Die „Single-Shot“-Methode (einmal fragen und eine Antwort erhalten) reichte nicht aus, um ein wirklich sicheres System zu bauen.
Die wahre Magie geschah beim „Mach es nochmal“-Ansatz. Als die Forscher die KI dazu zwangen, ihre eigene Arbeit anzusehen, zuzugeben, was sie übersehen hatte, und es dann zu korrigieren, sprang die Sicherheit signifikant in die Höhe. Indem sie die KI zur „Selbstprüfung“ und Iteration zwangen, stellten die Forscher fest, dass der Code viel robuster wurde. Die KI erinnerte sich schließlich daran, die „Betreten verboten“-Schilder (Security Header) aufzustellen und das hintere Tor zu verriegeln (CSRF-Schutz).
Das große Fazit
Das Paper kommt zu dem Schluss, dass wir der KI nicht einfach standardmäßig vertrauen können, um sichere Software zu bauen. Wenn Sie eine KI bitten, „eine Login-Seite zu erstellen“, wird sie wahrscheinlich etwas liefern, das zwar funktioniert, aber voller Lücken ist. Selbst ihr einmalig ein Regelwerk zu geben, reicht nicht aus.
Der einzige Weg, derzeit ein wirklich sicheres System von diesen KI-Assistenten zu erhalten, besteht darin, sie wie einen Junior-Lehrling zu behanden, der ständige Aufsicht benötigt. Man muss fragen: „Ist das sicher?“, dann „Prüfe deine Arbeit gegen die Regeln“ und schließlich „Behebe, was du übersehen hast“. Die Forscher nennen dies Iteratives Reprompting. Es ist der Unterschied zwischen einem Kind einen Hammer in die Hand zu drücken und zu hoffen, dass es ein sicheres Haus baut, im Vergleich dazu, neben ihm zu stehen, seine Arbeit zu prüfen und ihm zu sagen, dass er die Schrauben festziehen soll, bis das Haus tatsächlich sicher ist.
Kurz gesagt: Die KI ist ein mächtiges Werkzeug, aber sie ist kein „Einmal einstellen und vergessen“-Sicherheitswächter. Bis wir die Art und Weise, wie wir sie nutzen, ändern, müssen wir diejenigen sein, die die Taschenlampe halten und die Schlösser kontrollieren.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.