Problem
AI-Tools erzeugen wahrscheinliche Antworten auf Basis von Trainingsdaten und Kontext. Sie verstehen nicht automatisch die Businesslogik, die Schutzbedürfnisse oder die Compliance-Vorgaben einer Anwendung. Nur weil AI Code schreibt, heisst das nicht, dass er sicher ist. Typische Risiken:- veraltete Patterns
- unsichere Standardlösungen
- fehlende Eingabevalidierung
- fehlende Autorisierung
- fehlendes Error Handling
- keine Rate Limits
- schwache Passwort- oder Token-Verarbeitung
- unvollständige Tests
- erfundene APIs oder Bibliotheken
Risiken
AI kann Code erzeugen, der auf den ersten Blick plausibel wirkt, aber Sicherheitslücken enthält.Unsichere Patterns
Unsichere Patterns
Problem: AI kann Code mit veralteten oder unsicheren Patterns erzeugen, z. B. SQL-Abfragen mit String-Konkatenation.Prävention: Verwende sichere Standardlösungen wie Prepared Statements und geprüfte Bibliotheken.
Fehlende Validierung und Autorisierung
Fehlende Validierung und Autorisierung
Problem: AI-Code prüft oft nur den Erfolgsfall. Eingaben, Rollen oder Berechtigungen fehlen dann teilweise.Prävention: Prüfe Eingaben serverseitig und kontrolliere Berechtigungen pro Aktion.
Unsichere Secrets
Unsichere Secrets
Problem: AI kann Beispiele mit API-Keys, Tokens oder Passwörtern im Code erzeugen.Prävention: Speichere Secrets in Secret Stores oder Umgebungsvariablen.
Schwache Kryptografie
Schwache Kryptografie
Problem: AI kann unsichere oder falsche Kryptografie vorschlagen, z. B. Base64 als vermeintliche Verschlüsselung.Prävention: Verwende etablierte Kryptografie-Bibliotheken und aktuelle Algorithmen.
Fehlerhafte Abhängigkeiten
Fehlerhafte Abhängigkeiten
Problem: AI kann veraltete, unsichere oder nicht existierende Pakete vorschlagen.Prävention: Prüfe Abhängigkeiten mit Dependency-Scanning und offizieller Dokumentation.
Datenschutz
Bei GenAI ist Datenschutz ein zentrales Risiko, weil Prompts, Dateien oder Code an einen Anbieter übertragen werden können. Problematische Daten:- Kundendaten
- personenbezogene Daten
- Gesundheitsdaten
- Finanzdaten
- interne Dokumente
- Quellcode mit Geschäftslogik
- Zugangsdaten, Tokens oder API-Keys
- Logdateien mit IP-Adressen oder Benutzerkennungen
- keine Secrets in Prompts einfügen
- personenbezogene Daten entfernen oder anonymisieren
- interne Richtlinien und Tool-Bedingungen prüfen
- nur freigegebene AI-Tools verwenden
- bei sensiblen Daten lokale oder unternehmenskontrollierte Lösungen bevorzugen
- dokumentieren, wofür AI eingesetzt wurde
Security by Design mit AI-Unterstützung
AI kann beim Sicherheitsdesign helfen. Sie ersetzt aber kein eigenes Verständnis der Anwendung. Nützliche Aufgaben:- Threat Modeling vorbereiten
- mögliche Angriffsflächen sammeln
- sichere Architekturvarianten vergleichen
- Checklisten erstellen
- Testfälle für Missbrauchsszenarien vorschlagen
- sichere Fehlermeldungen formulieren
- Logging- und Audit-Felder vorschlagen
- Geschäftsregeln
- Rollenmodell
- Datenklassifikation
- gesetzliche Vorgaben
- bestehende Architektur
- reale Bedrohungen für dein System
Prompt Injection
Prompt Injection ist ein Angriff, bei dem Eingaben das Verhalten eines AI-Systems manipulieren. Beispiel:- Eingaben validieren
- Systemanweisungen und Benutzereingaben klar trennen
- AI-Ausgaben nicht ungeprüft ausführen
- Tool-Zugriffe begrenzen
- Berechtigungen serverseitig prüfen
- sensible Daten nicht in den AI-Kontext legen
- kritische Aktionen durch Menschen bestätigen lassen
Vibe Coding
Vibe Coding bedeutet, mit AI und Intuition schnell Code zu erzeugen, ohne vorher sauber zu planen. Das kann für Prototypen nützlich sein. Für sicherheitskritische Funktionen ist es riskant. Typische Probleme:- Authentifizierung wirkt funktional, ist aber leicht zu umgehen.
- Rollen und Berechtigungen fehlen.
- Eingaben werden nicht validiert.
- Fehlerfälle werden nicht getestet.
- Secrets landen im Code.
- Logs enthalten sensible Daten.
- Es gibt keine klare Architekturentscheidung.
Prävention
Testing und Review sind bei AI-generiertem Code besonders wichtig, weil AI-Vorschläge überzeugend aussehen können. Wichtige Kontrollen:- Code Review durch Menschen
- statische Analyse, z. B. Linter oder Security Scanner
- Tests für normale Fälle
- Tests für Fehlerfälle
- Tests für Missbrauchsfälle
- Dependency-Scanning
- Secret-Scanning
- manuelles Review sicherheitskritischer Logik
- Login mit falschem Passwort
- Login mit unbekannter E-Mail
- Passwort-Reset für existierende und nicht existierende Konten
- Zugriff auf Admin-API als normaler Benutzer
- SQL-Injection-Payloads in Formularfeldern
- XSS-Payloads in Kommentaren
- wiederholte fehlgeschlagene Logins
Regulatorik und Ethik
Beim Einsatz von AI können rechtliche und ethische Fragen entstehen. Relevante Themen:- Datenschutzgesetz (DSG)
- Datenschutz-Grundverordnung (DSGVO)
- EU AI Act
- Urheberrecht und Lizenzfragen
- Haftung bei Fehlern
- Dokumentation des AI-Einsatzes
- Bias und Diskriminierung
Merksätze
- AI-generierter Code ist ein Vorschlag, kein Sicherheitsnachweis.
- AI kennt deine Businesslogik nicht automatisch.
- Datenschutz beginnt beim Prompt.
- Prompt Injection manipuliert AI-Systeme über Eingaben.
- Security by Design kann durch AI unterstützt werden, bleibt aber menschliche Verantwortung.
- AI-Code braucht Tests, Reviews und Security-Analyse.
- Vibe Coding ist schnell, aber ohne Planung riskant.