Security & Architektur

Wenn die KI den Code schreibt - und die Lücken gleich mit

Carola Schulte
Carola Schulte 1. Juni 2026 11 min Lesezeit

2026 schreibt die KI mit. In vielen Teams stammt inzwischen ein erheblicher Teil des Codes nicht mehr von Menschen, sondern von Copilot, Cursor & Co. Das ist schnell, das ist bequem - und es bringt ein Problem mit, über das selten geredet wird: Ein großer Teil dieses Codes ist unsicher. Nicht „könnte unsicher sein". Sondern messbar, reproduzierbar unsicher.

Die KI generiert nicht nur Funktionen. Sie generiert Schwachstellen gleich mit - und niemand prüft sie.

Die Zahl, die wehtut: Studien und Sicherheitsreports zeigen je nach Sprache, Tool und Testaufbau Werte zwischen rund 24 % und 45 % sicherheitsrelevanter Schwächen in KI-generiertem Code. Veracode nennt in seinem GenAI Code Security Report 2025 die 45 %; eine akademische Untersuchung von Copilot-Snippets in echten GitHub-Projekten fand rund 29,5 % betroffene Python- und 24,2 % betroffene JavaScript-Snippets. Die Spanne ist groß - die Richtung ist eindeutig: Das ist keine Randnotiz, sondern die neue Normalität in Ihrer Codebasis.

Ich sehe dieses Muster seit 2025 immer häufiger in Code-Reviews, technischen Prüfungen und Audits: Code, der funktioniert, sauber aussieht, Tests besteht - und trotzdem eine offene SQL-Injection, einen hartcodierten Token oder eine kaputte Zugriffskontrolle enthält. Der Unterschied zu früher: Diese Lücken kommen jetzt schneller und in größerer Menge rein, weil die KI in Sekunden produziert, was ein Mensch in Stunden geschrieben (und dabei wenigstens kurz nachgedacht) hätte.

Dieser Artikel erklärt, warum das passiert, was es mit der Software-Lieferkette zu tun hat - und vor allem: was Architektur dagegen tut. Denn die Antwort ist nicht „benutzt keine KI". Die Antwort ist: baut Strukturen, die unsicheren Code abfangen, egal wer ihn geschrieben hat.

Warum KI-Code unsicher ist (und es nicht von allein besser wird)

Ein Sprachmodell sagt das statistisch wahrscheinlichste nächste Token voraus. Es wurde auf öffentlichem Code trainiert - und öffentlicher Code ist im Schnitt nicht sicher. Veraltete Beispiele aus Foren, Tutorials mit deaktiviertem CSRF-Schutz, „funktioniert bei mir"-Snippets ohne Input-Validierung: Das alles ist Trainingsmaterial. Das Modell reproduziert die Durchschnittsqualität dessen, was es gesehen hat - nicht die Best Practice.

Der Kern des Problems: Die KI optimiert auf „sieht aus wie funktionierender Code", nicht auf „ist sicher". Sicherheit ist unsichtbar - sie zeigt sich erst, wenn jemand angreift. Genau diese Dimension fehlt im Trainingssignal.

Die typischen Muster, die ich immer wieder finde

  • String-konkatenierte SQL-Queries statt parametrisierter Statements - die KI nimmt die kürzere, „lesbarere" Variante.
  • Hartcodierte Secrets in Beispiel-Konfigurationen, die dann nie ersetzt werden.
  • Fehlende oder nur im Frontend implementierte Zugriffskontrolle - die KI „weiß" nicht, welche Rolle was darf.
  • Veraltete Krypto (MD5, SHA-1) aus alten Trainingsbeispielen.
  • Zu großzügige Fehlerausgaben, die Stacktraces und interne Pfade leaken.

Jedes einzelne davon ist harmlos zu beheben - wenn man es findet. Das Problem ist die Menge und die Geschwindigkeit, mit der es entsteht.

Die zweite Front: die Lieferkette

Es bleibt nicht beim Code, den die KI schreibt. Sie entscheidet auch mit, welche Bausteine Sie verwenden. Und hier wird es richtig gefährlich.

Die Front verschiebt sich: Der Verizon DBIR 2026 nennt eine Kernzahl, die genau hierher gehört: 31 % aller Angriffe beginnen inzwischen mit der Ausnutzung einer Software-Schwachstelle - nicht mehr primär mit gestohlenen Zugangsdaten. Das verbindet beide Fronten dieses Artikels: KI produziert Lücken in größerer Menge, und Angreifer steigen heute bevorzugt über genau solche Lücken ein. Verschärft wird das dadurch, dass viele Entwickler die Auswahl ihrer Abhängigkeiten inzwischen KI-Vorschlägen überlassen - die regelmäßig Pakete mit bekannten, ungepatchten Schwachstellen (CVEs) empfehlen.

Das ergibt eine toxische Kombination: Die KI empfiehlt eine Bibliothek, weil sie in ihren Trainingsdaten oft vorkam - nicht, weil sie aktuell und sicher ist. Schlimmer noch: Angreifer haben begonnen, gezielt Paketnamen zu registrieren, die KI-Modelle „halluzinieren" (sogenanntes Slopsquatting). Dass Sprachmodelle reproduzierbar Pakete erfinden, die es gar nicht gibt, ist in der „package hallucination"-Forschung dokumentiert; Sicherheitsforscher wie Lasso Security haben gezeigt, wie sich genau diese halluzinierten Namen als Angriffsweg missbrauchen lassen. Die KI schlägt ein Paket vor, das es nicht geben sollte - und jemand hat es vorsorglich mit Schadcode hinterlegt.

Konkret heißt das: Sie können fehlerfreien eigenen Code haben und trotzdem kompromittiert sein - weil eine von der KI vorgeschlagene Abhängigkeit drei Ebenen tief eine bekannte Lücke oder gleich einen Backdoor mitbringt.

Was Architektur dagegen tut

Jetzt der Teil, der zählt. Sie können das Tempo der KI nicht verlangsamen - und sollten es auch nicht. Aber Sie können Architektur bauen, die davon ausgeht, dass jeder Code unsicher ist, bis das Gegenteil bewiesen ist. Das ist kein neues Konzept, es heißt Security by Design. Neu ist nur die Dringlichkeit.

1. Die KI nie direkt in die Produktion schreiben lassen

Zwischen „die KI hat es generiert" und „es läuft beim Kunden" gehören Schichten, die nicht verhandelbar sind: automatisiertes Security-Scanning (SAST) im CI, Dependency-Scanning bei jedem Build, und ein menschliches Review für sicherheitskritische Pfade. Die KI darf Vorschläge machen. Sie darf nicht das letzte Wort haben.

2. Die Lieferkette sichtbar machen

Sie können nicht schützen, was Sie nicht kennen. Eine SBOM (Software Bill of Materials) listet jede Abhängigkeit inklusive Transitiv-Dependencies. Kombiniert mit Artifact Signing und automatisiertem CVE-Abgleich wird aus „wir hoffen, die Pakete sind okay" ein „wir wissen es". Jedes neu vorgeschlagene Paket wird gegen eine Allowlist und gegen bekannte Schwachstellen geprüft - automatisch, vor dem Merge.

3. Zugriffskontrolle gehört in die Architektur, nicht in den generierten Code

Wenn Autorisierung eine zentrale, getestete Schicht ist, durch die jede Anfrage muss, dann kann die KI im einzelnen Endpoint vergessen, die Rolle zu prüfen - es greift trotzdem. Verlassen Sie sich nie darauf, dass generierter Code an die richtige Stelle den richtigen Check setzt. Bauen Sie die Struktur so, dass das Vergessen folgenlos bleibt.

4. Eine Prüf-Schicht zwischen Anwendung und KI

Wo KI zur Laufzeit eingebunden ist (Agenten, Assistenten, RAG), braucht es eine Schicht, die Prompts vor der Ausführung bewertet, Policy-Grenzen durchsetzt und Nutzungsmuster überwacht - Stichwort Prompt Injection und Datenabfluss. Das ist Architektur-Arbeit, kein Plugin.

Die Faustregel: Gehen Sie als Arbeitshypothese davon aus, dass ein erheblicher Teil Ihres KI-generierten Codes eine Lücke enthält. Dann bauen Sie nicht darauf, jede einzelne zu vermeiden - sondern darauf, dass jede einzelne abgefangen wird, bevor sie produktiv geht. Das ist der mentale Wechsel, der 2026 den Unterschied macht.

Was das für Ihr Unternehmen bedeutet

Wenn Ihr Team mit KI entwickelt - und das tut es, ob offiziell genehmigt oder nicht - dann ist Ihre Angriffsfläche im letzten Jahr gewachsen, ohne dass jemand eine Entscheidung getroffen hätte. „Shadow AI" nennt man das: Entwickler nutzen Tools, die nie geprüft wurden, und produzieren damit Code, der nie auf Sicherheit getestet wird.

Die gute Nachricht: Genau diese Schwachstellen sind auffindbar. Ein Security-Audit, das gezielt nach KI-typischen Mustern sucht, und eine Architektur, die unsicheren Code strukturell abfängt, holen Sie aus der Gefahrenzone - ohne Ihr Team auszubremsen. Ja, SAST-Gates und Review-Pflicht erzeugen Reibung. Das ist ihr Sinn. Diese Reibung ist gewollt, kalkuliert und um Größenordnungen billiger als der Incident, den sie verhindert.

Die Frage ist nicht, ob Sie KI einsetzen. Die Frage ist, ob Ihre Architektur dem gewachsen ist.

Quellen & weiterführende Belege

Sicherheitsaussagen gehören belegt - gerade in diesem Themenfeld. Die zentralen Zahlen dieses Beitrags stützen sich auf:

  • Veracode - GenAI Code Security Report 2025: rund 45 % sicherheitsriskante Schwächen in getestetem KI-Code.
  • Akademische Untersuchung von Copilot-Snippets (GitHub-Projekte): ca. 29,5 % betroffene Python- und 24,2 % betroffene JavaScript-Snippets (arXiv).
  • Verizon Data Breach Investigations Report (DBIR) 2026: 31 % aller Angriffe beginnen mit der Ausnutzung von Software-Schwachstellen (statt mit gestohlenen Credentials); 48 % setzen auf Ransomware. Betrachteter Zeitraum: 1. November 2024 bis 31. Oktober 2025.
  • „Package hallucination"-Forschung & Lasso Security: dokumentierte, reproduzierbar von LLMs erfundene Paketnamen als Angriffsweg (Slopsquatting).

Die Werte variieren je nach Sprache, Modell und Testaufbau erheblich. Sie als Größenordnung zu lesen - nicht als exakte Konstante - ist Teil eines ehrlichen Umgangs mit den Daten.


Carola Schulte

Carola Schulte

Software-Architektin und Network Security Engineer. Findet Schwachstellen, bevor ein Angreifer oder Auditor sie findet - auch die, die KI hinterlässt.

Beratung anfragen

Entwickelt Ihr Team mit KI?

Dann ist Ihre Angriffsfläche gewachsen - vermutlich, ohne dass jemand entschieden hat. Ich prüfe Ihre Codebasis gezielt auf KI-typische Schwachstellen und baue Architektur, die unsicheren Code abfängt, bevor er produktiv geht.

Review anfragen