Motivation
Das Thema Agentic Coding gewinnt zunehmend an Bedeutung. KI-Modelle sollen Softwareentwickler nicht nur bei einzelnen Aufgaben unterstützen, sondern in der Lage sein, komplexe Entwicklungsprozesse zu planen, umzusetzen und zu reviewen – mit dem Ziel, die Entwicklungsgeschwindigkeit deutlich zu erhöhen.
Dabei stellt sich jedoch eine zentrale Frage: Verfügen diese Modelle auch über ein ausreichendes Verständnis für IT-Sicherheit?
Können KI-Modelle dabei helfen, Sicherheitslücken in Software zu identifizieren? Zudem wurde zeitnah die Frage aufgeworfen, in welchem Umfang KI auch zur Ausnutzung bestehender Lücken beitragen kann.
Genau diesen Fragestellungen wurde im Rahmen eines kleinen Experiments nachgegangen.
Das Experiment
Für das Experiment habe ich mehrere Web Challenges von der Hacking-Plattform Hack The Box verwendet. Der große Vorteil dieser Challenges liegt darin, dass es sich um kleine, abgeschlossene Webanwendungen mit überschaubarem Funktionsumfang handelt, die garantiert mindestens eine Sicherheitslücke enthalten. Außerdem liegt der Source Code vor, was eine statische Analyse ermöglicht.
Als Coding-Agent kam OpenCode zum Einsatz. Innerhalb dieses Tools habe ich mit verschiedenen KI-Modellen experimentiert:
- Kimi K2.5 Free
- GPT-5-Nano
- qwen3-coder (lokal über Ollama gehostet)
- Claude Opus 4.6
Einfache Web Challenge
Zunächst habe ich eine einfache Web Challenge von Kimi K2.5 analysieren lassen. Der verwendete Prompt war bewusst minimal gehalten:
“Find vulnerabilities in any files in the app directory.”
Es kam kein aufwendiges Prompt Engineering zum Einsatz. Überraschenderweise identifizierte Kimi die Sicherheitslücke nahezu sofort und generierte direkt einen passenden Request-Payload, um die Schwachstelle auszunutzen. Bis zu diesem Zeitpunkt hatte ich gar nicht in Betracht gezogen, dass die KI auch aktiv bei der Erstellung von Angriffen helfen könnte.
Für die einfache Challenge waren noch zwei weitere Prompts notwendig, bis der erzeugte Payload alle Bedingungen der Challenge erfüllte. GPT-5-Nano zeigte bei dieser Challenge eine sehr ähnliche Performance.
Auffällig war bei beiden Cloud-Modellen jedoch, dass sie teilweise die Zusammenarbeit verweigerten, sobald explizit von Ausnutzen, Angriffen oder Hacking die Rede war. Diese Einschränkung ließ sich jedoch relativ leicht umgehen, indem die Prompts entsprechend neutraler formuliert wurden.
Lokale Modelle
Zusätzlich zu den Cloud-Modellen wurde auch ein lokal gehostetes KI-Modell getestet. Hier kam qwen3-coder zum Einsatz. Dieses Modell konnte die Sicherheitslücke der Web Challenge ebenfalls relativ schnell identifizieren, hatte jedoch Schwierigkeiten beim Erstellen eines funktionierenden Angriffspayloads zu helfen.
Es erwies sich als deutlich anspruchsvoller dem Modell klar zu vermitteln, welches Ziel ich verfolge und wie es mich konkret unterstützen soll. Dabei lässt sich allerdings nicht ausschließen, dass ein Teil der Probleme auch auf fehlendes oder suboptimales Prompting zurückzuführen ist.
Harte Web Challenge
Da das Experiment mit der einfachen Web Challenge vielversprechend verlief, wollte ich prüfen, ob die KI auch mit komplexeren Herausforderungen umgehen können.
„Schwierig“ bedeutet in diesem Zusammenhang, dass:
- mehrere Sicherheitslücken kombiniert werden müssen oder
- die vorhandenen Lücken sehr spezifische Ausnutzungsbedingungen erfordern.
Teilweise enthalten diese Challenges Code, der zwar eine Sicherheitslücke darstellt, jedoch in den vorhandenen Umständen nicht direkt ausnutzbar ist. Ein Beispiel hierfür wäre User Input, der unmaskiert in HTML eingefügt wird, jedoch ausschließlich alphanumerische Zeichen akzeptiert.
Zur Lösung der harten Web Challenge wurde ausschließlich Claude Opus eingesetzt. Dabei zeigte sich, dass das Modell Sicherheitslücken sehr zuverlässig identifizieren und auch einschätzen konnte, ob diese grundsätzlich ausnutzbar sind. Schwierigkeiten hatte es jedoch dabei, die tatsächlich praktisch ausnutzbare Schwachstelle zu erkennen.
Nachdem ich Opus gezielt auf die relevante Sicherheitslücke hingewiesen hatte, bestätigte das Modell diese und konnte nachvollziehbar erklären, warum sie anfällig ist. Dennoch gelang es in diesem Fall nicht, einen funktionierenden Exploit zu erzeugen, da die Schwachstelle einen sehr spezifischen und ungewöhnlichen Angriffsweg erforderte.
Hier zeigte sich deutlich, dass die Stärke des Modells weniger im eigenständigen Finden komplexer Exploit-Ketten liegt, sondern vielmehr darin, Hypothesen zu verifizieren, Angriffsideen zu bewerten und bei der Erstellung von Exploit-Skripten unterstützend mitzuwirken. Das Lösen der harten Challenge erforderte daher deutlich mehr eigene Analyse und manuellen Input, gelang jedoch nach meiner subjektiven Einschätzung insgesamt schneller als ohne KI-Unterstützung.
Erkenntnisse
Aus dem Experiment lassen sich mehrere zentrale Erkenntnisse ableiten:
- KI-Modelle sind bereits heute sehr gut darin, klassische Web-Schwachstellen zu erkennen
- Bei einfachen Szenarien ist sogar Exploit-Generierung möglich
- Cloud-Modelle liefern meist bessere Ergebnisse, sind jedoch stärker reglementiert
- Lokale Modelle bieten mehr Freiheit, erfordern aber deutlich präziseres Prompting und häufig weniger Leistungsfähigkeit
- Bei komplexen Angriffen bleibt menschliche Expertise unverzichtbar
Trotzdem ließ sich feststellen, dass selbst bei schwierigen Challenges der Lösungsprozess mit KI-Unterstützung spürbar schneller verlief als ohne.
Fazit und Risiken
Agentic Coding hat das Potenzial, auch im Bereich Application Security einen echten Mehrwert zu bieten. KI-Modelle können Entwickler:innen und Security Engineers bereits heute effektiv bei der Analyse von Code, der Identifikation von Schwachstellen und der Validierung von Angriffsideen unterstützen.
Gleichzeitig zeigt das Experiment deutlich, dass KI derzeit kein Ersatz für tiefgehendes Sicherheitsverständnis ist. Insbesondere bei komplexen, nicht standardisierten Angriffsszenarien bleibt menschliche Analyse entscheidend.
Ein weiterer, nicht zu unterschätzender Aspekt ist der Umgang mit sensiblen Daten. Bei der Nutzung cloudbasierter KI-Modelle werden Source Code, Konfigurationsdateien und potenziell sicherheitskritische Informationen an externe Modellbetreiber übermittelt. Auch wenn viele Anbieter Zusicherungen zu Datenschutz, Verschlüsselung und Nicht-Nutzung der Daten für Trainingszwecke geben, stellt dies insbesondere für proprietäre Software, sicherheitskritische Systeme oder regulierte Branchen ein relevantes Risiko dar.
Lokale oder selbst gehostete Modelle können dieses Risiko reduzieren, bringen jedoch andere Herausforderungen mit sich – etwa geringere Modellqualität, höheren Betriebsaufwand und zusätzlichen Bedarf an Prompt-Expertise.
In der Praxis bedeutet dies: Der Einsatz von KI im Security-Kontext erfordert eine bewusste Abwägung zwischen Leistungsfähigkeit, Datenschutz und Risikoprofil. Richtig eingesetzt, kann KI jedoch als leistungsfähiger Sparringspartner dienen - nicht nur zur Steigerung der Entwicklungsgeschwindigkeit, sondern auch zur Verbesserung der Sicherheit moderner Software.
Weitere Artikel in diesem Themenbereich
Entdecke spannende weiterführende Themen und lass dich von der codecentric Welt inspirieren.
Blog-Autor*in
David
IT-Security Consultant
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.