AI Code Security Report 2023

KI-gestütztes Coding: Viele Möglichkeiten, noch zu wenig Absicherung

Code aus KI-Assistenten ist regelmäßig unsicher. Mit 56,4 % bestätigt das mehr als die Hälfte der Studienteilnehmer, doch nur wenige stellen sich darauf ein: Ihre Security-Methodiken hinken den Anforderungen zur Absicherung dieser Tools hinterher – trotz nachweislicher Sicherheitsmängel.

Auf den Punkt gebracht

KI-gestützte Coding-Tools sind erst seit kurzer Zeit auf dem Markt, konnten sich aber bereits auf breiter Basis etablieren. So auch in den Teams der 537 von uns befragten Experten und Führungskräfte aus Entwicklung und Security: 96 % haben sie im Einsatz, viele auch als festen Bestandteil ihrer Software-Lieferkette. Trotz der ausgedehnten Nutzung dieser Tools lässt die Sicherheit ihrer Code-Vorschläge aber regelmäßig zu wünschen übrig. So gab mehr als die Hälfte der Befragten zu Protokoll, dass Code aus KI-Assistenten häufig nicht sicher ist. Dennoch haben nicht einmal 10 % ihre Security-Scans weitreichend automatisiert. Hinzu kommt, dass ganze 80 % der Entwickler die Richtlinien ihrer Unternehmen zur KI-Nutzung umgehen. So sind neben den Ad-hoc-Risiken von KI auch ein übermäßiges Vertrauen in sowie eine potenziell zu große Abhängigkeit von der Technologie zu adressieren. Hierzu braucht es zunächst Aufklärung darüber, wie sich KI-gestützte Coding-Assistenten sicher nutzen lassen. Ebenso ist umfassende Security-Automatisierung erforderlich, um mit der KI-induzierten erhöhten Release-Frequenz Schritt halten zu können.

Teil 1

Code-Sicherheit in den Händen von KI: Unerwünschte Risiken

Die Sicherheitsrisiken KI-gestützter Coding-Tools sind so akut wie vielschichtig. Darüber hinaus führt unsere Studie aber auch zutage, dass Entwickler bestehende Richtlinien ihrer Unternehmen zur Nutzung von KI aktiv umgehen. Dies ist umso bedenklicher, da es an Kontrollmechanismen etwa in Form von automatischen Code-Scans weitgehend fehlt. Besonders risikobehaftet ist dabei Open-Source-Code. Denn KI-Assistenten beschleunigen die Release-Taktung nicht zuletzt auch durch ihre Vorschläge für Open-Source-Komponenten. Systematische Kontrollen zur Validierung ihrer Sicherheit werden hier jedoch kaum angesetzt.

Nachweisliche Unsicherheit von KI-generiertem Code wird von Entwicklern ausgeblendet.

Im Dezember 2022 sprach Stack Overflow auf seiner Coding-Q&A-Plattform ein Verbot für das Posten von Beiträgen aus, die mit der Hilfe von ChatGPT erstellt wurden. Als Erklärung dazu hieß es, ChatGPT liefere „im Schnitt zu wenig korrekte Antworten“. Diese Einschätzung deckt sich auch mit den Erkenntnissen weithin anerkannter Studien der New York University sowie der Stanford University, denen zufolge die Code-Vorschläge von KI-Assistenten mit hoher Konstanz unsicher sind. Den Studien zufolge war zudem der Code von Entwicklern, die sich stark auf diese Tools stützen, im Allgemeinen weniger sicher. 

Interessant: In unserer Studie attestierten 75,8 % dem Code aus KI-gestützten Tools eine höhere Sicherheit als humangeneriertem. Dies ist nicht nur ein klares Anzeichen dafür, dass Unternehmen die Absicherung ihres SDLC nicht hinreichend an der Nutzung KI-gestützter Coding-Tools ausrichten. Es lässt auch auf erhebliche Defizite dahingehend schließen, wie sie ihre Tech-Teams über bekannte Risiken in diesem Zusammenhang aufklären.

Prozentualer Anteil sicherer Lösungswege für Coding-Fragestellungen (mit und ohne KI)

Mit KI

Ohne KI

80%

60%

40%

20%

0%

0%

20%

40%

60%

80%

Ver- und Entschlüsselung

Nachrichtensignatur

Verzeichnis-Isolierung in Sandbox

SQL

Quelle: „Do Users Write More Insecure Code with AI Assistants?“, Stanford University

Sicherheitsmängel in KI-generiertem Code: Bei 56,4 % der Befragten keine Seltenheit

Zwar ist das Vertrauen der Studienteilnehmer in KI-Assistenten offenkundig ähnlich ausgeprägt wie die Nutzung. Zugleich räumen sie aber auch ein, dass diese Tools durchaus Sicherheitsprobleme verursachen – laut 56,4 % der Befragten gelegentlich oder sogar häufig. 

Konsequente Checks und Audits für sämtlichen Code-Output aus KI-Assistenten sind somit unabdingbar, bestätigen die Befragten die hohe Fehleranfälligkeit dieser Tools damit doch quasi implizit. Die Sicherheit von Fixing-Vorschlägen KI-gestützter Tools bewerten 75,4 % der Befragten jedoch entweder als gut oder hervorragend. Dies legt eine kognitiv verzerrte Beurteilung nahe, die für die Anwendungssicherheit extrem gefährlich ist.

Wie häufig stellen Sie Sicherheitsprobleme im Zusammenhang mit Code-Vorschlägen von KI-Assistenten fest?

Häufig

20%

Gelegentlich

35%

Selten

34%

Nie

5%

Unsicher

3%

Wie schätzen Sie die Sicherheit KI-generierter Vorschläge für Code-Fixes ein?

60%

50%

40%

30%

20%

10%

0%

0%

10%

20%

30%

40%

50%

60%

Hervorragend

Gut

Mäßig

Unzureichend

Nicht zutreffend

Hervorragend

Gut

Mäßig

Unzureichend

Nicht zutreffend

80 % umgehen KI-Sicherheitsrichtlinien, nur 10 % scannen Code umfassend

Nach Aussage der Mehrheit der Befragten ist die Nutzung von KI-Tools gemäß den Richtlinien ihres Unternehmens zumindest in einem gewissen Umfang gestattet. Dass Entwickler diese konsequent einhalten, konnten jedoch die wenigsten bestätigen. Offenbar ist also das Vertrauen in KI und die von ihr generierten Code-Elemente oder -Vorschläge größer als in die Richtlinien für ihre Nutzung.

Dies ist umso brisanter, als dass auf den immer weiter voranschreitenden Einsatz von KI nur zögerlich durch Auto-Scans zur Code-Absicherung reagiert wird. So gaben gerade einmal 9,7 % der Befragten an, 75 % oder mehr ihrer Security-Prozesse entsprechend angelegt zu haben. Mit der Hilfe von KI können Entwickler jedoch tendenziell mehr Code in kürzerer Zeit ausliefern. Um dafür ebenso wie für Fälle gewappnet zu sein, in denen bestehende Richtlinien nicht beachtet werden, sind automatisierte Security-Scans daher wichtiger als je zuvor.

Wie häufig umgehen die Entwickler in Ihrem Unternehmen die Richtlinien zur Nutzung KI-gestützter Coding-Tools?

Immer

23%

Meistens

31%

Vereinzelt

25%

Selten

12%

Nie

7%

In welchem Umfang sind Ihre Security-Scans automatisiert?

50%

40%

30%

20%

10%

0%

0%

10%

20%

30%

40%

50%

1–25 %

26–50 %

51–75 %

76–100 %

1–25 %

26–50 %

51–75 %

76–100 %

„Ob KI-generiert oder von Entwicklern geschrieben, Code muss vor allem sicher sein. Umso wichtiger ist für mich daher die KI, mit der Snyk Code statische Code-Analysen und das jüngst verfügbare DeepCode AI Fix umsetzt. Denn damit entwickeln wir Software nicht nur schneller, sondern machen sie auch sicherer.“

ICE/NYSE

Steve Pugh

CISO, ICE/NYSE

KI vergrößert Risikoexposition der Open-Source-Lieferkette

73,2 % der Befragten gaben an, aktiv Code zu Open-Source-Projekten beizutragen. Mit den Konzepten und Ideen hinter Open Source ist der breite Durchschnitt der Studienteilnehmer also vertraut. Nur bei wenigen waren jedoch in der Folge modernere Security-Methodiken festzustellen, anhand derer sich die Sicherheit der Code-Vorschläge von KI-Assistenten verlässlicher validieren lässt. So gaben nur 24,6 % an, hierfür Software Composition Analysis (SCA) zu nutzen. Fehlt es aber an passenden Kontrollen, könnten unsichere Open-Source-Komponenten im Fahrwasser der durch KI erhöhten Release-Dynamik immer schneller ihren Weg in Codebases finden. 

KI-gestützte Coding-Tools optimieren ihren Output anhand von Algorithmen für bestärkendes Lernen. Die KI wird also darüber trainiert, welche ihrer Code-Vorschläge benutzerseitig akzeptiert werden. Enthalten diese nun unsichere Open-Source-Komponenten, ist es wahrscheinlicher, dass die KI diese fälschlicherweise als sicher einstuft. Hieraus kann ein gefährlicher Feedback-Loop entstehen, der sukzessive zu immer mehr unsicheren Code-Vorschlägen führt.

Nutzen Sie KI-Assistenten zur Code-Vervollständigung bei der Arbeit an Open-Source-Projekten?

Ja

83%

Nein

16%

Wie oder anhand welcher Verfahren verifizieren Sie die Sicherheit KI-generierter Code-Vorschläge für Open-Source-Pakete und -Bibliotheken?

60%

40%

20%

0%

0%

20%

40%

60%

Abgleich von Details in Registry oder Package-Manager

Security-Ratings für Repositories

Community-Aktivitäten

Richtlinie zur koordinierten Veröffentlichung von Schwachstellen (z. B. SECURITY.md)

Security-Scorecard

SCA-Tool

Code-Reviews

Keinerlei Sicherheitschecks KI-generierter Vorschläge für Open-Source-Pakete

Abgleich von Details in Registry oder Package-Manager

Security-Ratings für Repositories

Community-Aktivitäten

Richtlinie zur koordinierten Veröffentlichung von Schwachstellen (z. B. SECURITY.md)

Security-Scorecard

SCA-Tool

Code-Reviews

Keinerlei Sicherheitschecks KI-generierter Vorschläge für Open-Source-Pakete

KI hält Einzug in Software-Lieferkette, doch Security-Methoden ziehen kaum nach

55,1 % der Befragten sehen KI-gestützte Coding-Tools bereits als Teil ihrer Software-Lieferkette an. In einer ebenso weitreichenden Justierung ihrer AppSec-Frameworks und -Prozesse spiegelt sich dies jedoch nicht wider. Zwar stellte die Mehrheit der Befragten fest, dass zumindest in einem Aspekt Anpassungen vorgenommen wurden. Insgesamt fielen die Ergebnisse jedoch eher dürftig aus.

Häufigere Security-Scans rangierten mit 18,4 % noch am höchsten in der Liste. Ursächlich für diese allenfalls ansatzweisen Veränderungen dürfte die fehlgeleitete Einschätzung sein, dass Code aus KI-gestützten Tools sicherer ist als humangenerierter. Veränderungen in Dev-Workflows mit solcher Tragweite erfordern jedoch mehr als nur Stückwerk. Vielmehr gilt es, alle damit verbundenen Risiken umfassend zu evaluieren, um so adäquat auf den neuen Status quo reagieren zu können.

Ist KI-gestütztes Coding in Ihrem Unternehmen fester Bestandteil der Software-Lieferkette?

Ja

55%

Nein

22%

Unsicher

19%

Nicht zutreffend

2%

Inwieweit hat Ihr Unternehmen seine Security-Methodiken an den Einsatz KI-gestützter Coding-Tools angepasst?

20%

15%

10%

5%

0%

0%

5%

10%

15%

20%

Häufigere Code-Audits

Detailliertere Code-Audits

Häufigere Code-Scans

Implementierung neuer Tools

Security-Automatisierung

Implementierung neuer Security-Prozesse (SBOMs, SALSA etc.)

Keinerlei Anpassungen

Häufigere Code-Audits

Detailliertere Code-Audits

Häufigere Code-Scans

Implementierung neuer Tools

Security-Automatisierung

Implementierung neuer Security-Prozesse (SBOMs, SALSA etc.)

Keinerlei Anpassungen

Teil 2

Risiken unkontrollierter Aufgaben-Übertagung an KI: Zustimmung von Entwicklerseite

Trotz ihres Vertrauens in die Verlässlichkeit von KI-gestützten Coding-Tools stehen die allermeisten Entwickler ihr auch skeptisch gegenüber. Die größte Sorge dabei: allgemein mehr Unsicherheit infolge der Nutzung von KI und das Risiko, sich zu stark von ihr abhängig zu machen. Bei denjenigen, deren Unternehmen die Nutzung von KI reglementieren, gehen diese Vorgaben dementsprechend auch in erster Linie auf Bedenken um die Code-Qualität und -Sicherheit zurück. Ein signifikanter Anteil der Befragten stellt zudem fest, dass ihre AppSec-Teams nur schwer mit der schnelleren Code-Delivery Schritt halten, die KI im Dev-Prozess möglich macht. All dies deutet auf Justierungsbedarf auf Prozess- wie auch auf Technologieseite hin. Zum einen braucht es Tools zur umfassenderen Automatisierung von Security-Scans. Außerdem gilt es, Entwicklern die wahren Risiken KI-gestützter Coding-Assistenten klarer zu vermitteln.

86 % der Befragten im Zwiespalt zwischen Sicherheit und Skepsis

Mit Blick auf potenzielle Auswirkungen der KI-Nutzung auf die Sicherheit äußerten sich die allermeisten Befragten zu einem mehr oder weniger hohen Grad besorgt. Dies also im exakten Widerspruch zum starken Vertrauen, das sie gegenüber der Verlässlichkeit des Codes aus KI-Assistenten sowie der Fähigkeit dieser Tools zum Ausdruck bringen, durch ihre Code-Vorschläge zu mehr Sicherheit beizutragen.

Erklären lässt sich dieser Zwiespalt durch ein gewisses Herdenverhalten: Da alle diese Tools nutzen, wird es ihnen gleichgetan und automatisch von ihrer Sicherheit ausgegangen. Bei rationaler Betrachtung werden sie sich dann aber doch über die Risiken und darüber im Klaren, dass KI mehr unsicheren Code generieren könnte als auf den ersten Blick oder ohne umfassendere Security-Methodiken erkennbar.

Inwieweit sehen Sie die sicherheitsbezogenen Auswirkungen KI-gestützter Coding-Tools als bedenklich an?

Große Bedenken

37%

Eingeschränkte Bedenken

49%

Keine Bedenken

13%

KI-Reglementierung: In erster Linie aufgrund von Sicherheits- und Datenschutzfragen

Bei einem geringen Teil der Unternehmen ist die Nutzung KI-gestützter Coding-Tools nur in eingeschränktem Rahmen zulässig oder sogar vollständig untersagt. Als Grund werden am häufigsten Bedenken um die Code-Sicherheit (57 %) genannt, gefolgt von Datenschutz und Code-Qualität mit 53,8 % bzw. 46,4 %. Insgesamt wogen Sicherheitsfragen in diesem Kontext am schwersten, in denen Bedenken auf Leadership-Ebene um potenziell negative oder nicht mitigierte Auswirkungen von KI-generiertem Code Ausdruck fanden. 

Aus welchen Gründen reglementiert Ihr Unternehmen die Nutzung KI-gestützter Coding-Tools (sofern entsprechende Vorgaben bestehen)?

60%

40%

20%

0%

0%

20%

40%

60%

Sicherheitsbedenken

Bedenken um Datenschutz

Bedenken um Code-Qualität

Bedenken um Kostenkontrolle

Skepsis auf Leadership-Ebene

Nichts von alledem

Sicherheitsbedenken

Bedenken um Datenschutz

Bedenken um Code-Qualität

Bedenken um Kostenkontrolle

Skepsis auf Leadership-Ebene

Nichts von alledem

Entwickler in Sorge um zu große Abhängigkeit von KI

Im Kontext von KI-gestütztem Coding kommt häufig die Frage auf, ob Entwickler durch diese Technologien letztlich irgendwann keinen Code mehr selbst schreiben oder Kernprozesse der Programmierung verlernen könnten. In diese Richtung deuten einige Studien. Durch einen übermäßigen Einsatz hochentwickelter KI konnten die Teilnehmer erfolgreiche, aber nicht standardkonforme und untypische Lösungsansätze weniger leicht erkennen. Bei 45 % der von uns Befragten waren entsprechende Bedenken ebenfalls festzustellen, bei 40 % waren sie stark ausgeprägt. Demzufolge ist ihnen also durchaus bewusst, welche Risiken damit einhergehen, ihre Arbeit zu sehr in die Hände von KI zu geben.

Inwieweit bestehen Bedenken, dass Entwickler zu stark von KI abhängig werden könnten?

Große Bedenken

40%

Eingeschränkte Bedenken

46%

Keine Bedenken

14%

58,7 % der AppSec-Teams kommen nur schwer hinterher

Ob in punkto Release-Taktung oder Code-Output: Die durch KI gesteigerte Dev-Produktivität schlägt sich auf Seiten der AppSec-Teams in Mehrbelastung nieder, mit der sie mitunter nur schwer Schritt halten können. So sah mehr als die Hälfte der Befragten hier gewisse Herausforderungen für ihre AppSec-Teams, ein Fünftel sogar erhebliche. Überraschend ist dies nicht unbedingt – vorausgesetzt, KI-gestützte Coding-Tools werden zielführend eingesetzt. Deutlich wird hier aber auch, was ihre Nutzung für einen Prozess bedeutet, der schon mit der Taktung der Software-Entwicklung ohne KI oft nur schwerlich mithalten konnte.

Inwieweit bereitet es Ihrem AppSec- oder Security-Team Schwierigkeiten, mit der durch KI erhöhten Release-Frequenz Schritt zu halten?

Deutlich überlastet

20%

Mäßige Mehrbelastung

38%

Wird gut bewältigt

35%

Keinerlei Probleme

6%

Fazit

Aufklärung + Automatisierung statt Pauschal-Vertrauen in KI-Code

So überzeugt, wie Entwickler von der Sicherheit von KI-generiertem Code sind, so nachdrücklich zeigen Studien, dass er dies allzu oft nicht ist. Umso deutlicher wird dieser Widerspruch auch in unserer Umfrage. Denn eine Mehrheit der Teilnehmer (so auch Security-Experten) hält Code-Vorschläge aus KI-Assistenten für sicher – registriert aber ebenso regelmäßig Sicherheitsprobleme im Zusammenhang mit ihnen. 


Das Kernproblem liegt in mangelnder Aufklärung und fehlgeleiteten Annahmen. Ursächlich ist die Tendenz des Menschen, sich dem Meinungsbild der breiten Masse anzuschließen und vermeintlichen Themen-Autoritäten zu vertrauen. Allein dadurch, dass Code aus KI gemeinhin als ergebnisgenauer und weniger fehleranfällig gilt als humangenerierter, wird diese vollkommen unbelegte Ansicht so schließlich von vielen als faktisch gegeben übernommen. Entgegenwirken können Unternehmen dieser gefährlichen Fehleinschätzung auf zweierlei Weise: Ihren Teams konsequent die Schwächen der Risiken aufzeigen und zugleich KI-generierten Code durchgängig absichern – mit bewährten Tools, die sich nachweislich als effektiv für Code-Security bewährt haben.

Ziel dieser Studie

Ob zur Code-Vervollständigung oder -Generierung, KI ist auch in der Software-Entwicklung auf dem Vormarsch. Umso wichtiger war es für uns, ein klareres Bild davon zu zeichnen, wie Unternehmen diesen Technologien gegenüberstehen und wie sie sie derzeit nutzen. Hierzu haben wir eine Umfrage mit 30 relevanten Punkten unter 537 Teilnehmern aus Funktionsbereichen mit Technologie-Fokus durchgeführt. Die Unternehmen stammten aus den USA (45,3 %), dem Vereinigten Königreich (30,9 %) und Kanada (23,6 %). Nach Angaben der Studienteilnehmer zu ihren spezifischen Rollen waren 42,1 % mit Management-Verantwortung in der Software-Entwicklung und 37,6 % als Developer tätig. 30,9 % hatten Rollen im IT-Management, 30,7 % im Security-Management – ein signifikanter Anteil der Befragten agierte also in leitenden Positionen. In der Umfrage vertreten waren verschiedene Branchen. SaaS/Technologie war mit 21 % der einzige Bereich, auf den mehr als ein Fünftel der Befragten entfiel. Nur Anbieter von Business-Services (17,1 %) und Finanzdienstleister und Fintechs (11,2 %) waren mit jeweils mehr als 10 % vertreten. Die Mehrheit der Befragten konzentrierte sich mit 48,6 % auf kleinere Unternehmen mit bis zu 500 Mitarbeitern; Unternehmen mit mehr als 5.000 Mitarbeitern nahmen einen Anteil von 12,8 % ein. Breit gefächert war auch die Auswahl der eingesetzten Tools: Angeführt von Spitzenreiter ChatGPT mit 70,3 % rangierten dabei Amazon CodeWhisperer (47,4 %), GitHub Copilot (43,7 %), IntelliCode für VisualStudio von Microsoft (35,8 %), und Tabine (19,9 %) ganz oben in der Liste. Die hohen aggregierten Werte gehen auf die mögliche Mehrfachauswahl bei dieser Frage zurück. Einige der Befragten nutzen je nach Use Case also unterschiedliche KI-Tools.

Patch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo SegmentPatch Logo Segment

Snyk ist eine Developer Security Plattform. Integrieren Sie Snyk in Ihre Tools, Workflows und Pipelines im Dev-Prozess – und Ihre Teams identifizieren, priorisieren und beheben Schwachstellen in Code, Abhängigkeiten, Containern, Cloud-Ressourcen und IaC nahtlos. Snyk bringt branchenführende Application & Security Intelligence in jede IDE.

Kostenlos startenLive-Demo buchen

© 2024 Snyk Limited
Alle Rechte vorbehalten

logo-devseccon