Sichere Softwareentwicklung mit KI: Was wir prüfen müssen
· elbtech
Aktualisiert:
KI verändert, wie Software entsteht. Implementierungen, Tests und Dokumentation lassen sich anders erarbeiten als noch vor wenigen Jahren. Das ist ein Anlass, unsere Methoden weiterzuentwickeln – nicht, die Verantwortung an ein Modell abzugeben. Unser Maßstab ist nicht die Menge erzeugten Codes, sondern überprüfbares Verhalten. Dieser Beitrag beschreibt die Engineering-Prinzipien, an denen wir unsere Arbeit ausrichten; er ist kein Auditbericht oder Sicherheitszertifikat.
Mit KI entwickelt ist nicht dasselbe wie KI im Produkt
Auch eine Anwendung ohne Sprachmodell kann mit Coding-Agenten entwickelt werden. Umgekehrt braucht eine Anwendung mit integrierter KI zusätzliche Prüfungen ihres Modellverhaltens und ihrer erlaubten Aktionen. Beide Ebenen haben Risiken: der Entwicklungsprozess und das ausgelieferte System. Wer von AI Safety spricht, sollte sagen, welche davon gemeint ist und welche möglichen Schäden im konkreten Einsatz betrachtet werden.
Korrekt, sicher und nachvollziehbar sind unterschiedliche Fragen
- Korrektheit: Erfüllt das Verhalten die vereinbarten Anforderungen und Fachregeln?
- Sicherheit: Bleiben Daten, Berechtigungen und technische Grenzen auch bei missbräuchlichen Eingaben geschützt?
- Nachvollziehbarkeit: Lässt sich erklären, welche Anforderung, Änderung, Prüfung und Freigabe zu einem Release geführt hat?
- Safety: Welche Schäden könnte ein Fehler verursachen, und welche Maßnahmen begrenzen dieses Risiko?
Ein plausibler Test kann das falsche Verhalten bestätigen
Ein vereinfachtes Beispiel: Ein Nutzer darf nur Angebote seines eigenen Unternehmens lesen. Generiert die KI sowohl den Endpunkt als auch Tests, die ausschließlich den erlaubten Zugriff zeigen, können alle Tests grün sein – obwohl die Mandantentrennung fehlt. Das Prüfkriterium muss unabhängig vom Umsetzungsvorschlag feststehen. Ein negativer Test mit einem fremden Mandanten ist hier genauso wichtig wie der Erfolgsfall. Das Beispiel illustriert eine Fehlerklasse, nicht einen behaupteten Kundenbefund.
Auch die Entwicklungsumgebung gehört zum System
Coding-Agenten arbeiten mit Quellcode, Tools und möglicherweise externen Inhalten. Deshalb müssen ihr Datenzugriff, ihre Netzwerkverbindungen und ihre Berechtigungen bewusst begrenzt werden. Secrets gehören nicht in Prompts oder Ausgaben. Vorgeschlagene Abhängigkeiten müssen tatsächlich existieren und geprüft werden. Anweisungen in einer Repository-Datei können helfen, ersetzen aber keine technisch durchgesetzten Grenzen.
Nachweise statt eines weiteren Versprechens
Sinnvolle Prüfnachweise verbinden eine konkrete Anforderung mit dem Diff, tatsächlich ausgeführten Tests, relevanten Sicherheitsprüfungen und einer verantworteten Freigabe. Eine Aussage des Agenten, er habe alles geprüft, ist kein Prüfergebnis. Auch ein bestandener Testlauf beweist weder vollständige Sicherheit noch fachliche Richtigkeit einer unvollständigen Anforderung. Offene Risiken und nicht geprüfte Bereiche müssen benannt bleiben.
Neue Werkzeuge, lernende Methoden
Wir wollen die Möglichkeiten von KI nutzen und ihre Grenzen sichtbar machen. Das bedeutet, Annahmen zu hinterfragen, kleine Änderungen zu prüfen und aus Fehlern Anforderungen und Regressionstests abzuleiten. Fachliche Freigaben und technische Verantwortung verschwinden nicht, nur weil die Implementierung schneller entsteht. Mehr zu expliziten Domänenmodellen findet ihr in unserer Einführung zu Rostfrei.