Vibe-Coding, also das Erstellen von Software, indem man sie einem KI-Modell beschreibt, anstatt jede einzelne Zeile manuell zu schreiben und zu überprüfen, ist in der Technologiebranche zunehmend verbreitet. Seine Geschwindigkeit und Zugänglichkeit können Menschen dabei helfen, mit weniger Ressourcen etwas zu entwickeln. Code, der nicht vollständig verstanden oder geprüft wird, kann jedoch Sicherheitsrisiken mit sich bringen.
Das Cybersicherheitsunternehmen Apiiro erklärte, eine Analyse von Fortune-50-Unternehmen habe ergeben, dass Vibe-Coding Ingenieure viermal produktiver machte, während dabei zehnmal so viele Sicherheitsprobleme entstanden. Für Anfänger können die folgenden Praktiken einige der Risiken verringern.
1. Präzise Anweisungen schreiben und eine dauerhafte Sicherheitsdatei erstellen
KI-Modelle können Abkürzungen nehmen, um eine Anfrage zu erfüllen, ohne angemessene Schutzmaßnahmen hinzuzufügen. Prompts sollten daher Datenschutzanforderungen, Zugriffsbeschränkungen, Verschlüsselung und andere Sicherheitskontrollen ausdrücklich nennen. Entwickler können das Modell außerdem auffordern, die OWASP-Liste der wichtigsten Schwachstellen zu berücksichtigen.
Viele Tools unterstützen dauerhaften Kontext oder dauerhafte Regeln. Eine Markdown-Datei kann die Sicherheitsanforderungen des Projekts enthalten, damit das Modell sie bei künftigen Aufgaben berücksichtigt. Die Quelle empfiehlt außerdem, Tools mit Audit-Protokollen auszuwählen, die es erleichtern, Änderungen am Projekt nachzuverfolgen.
2. Zugangsdaten aus Prompts und Quellcode heraushalten
API-Schlüssel und Passwörter sollten weder in einen KI-Chat eingegeben noch direkt in den Code eingebettet werden. Wenn Zugangsdaten später zu GitHub hochgeladen werden, könnten sie für andere sichtbar werden. Die Zugriffsmöglichkeiten eines KI-Tools einzuschränken, kann ebenfalls dazu beitragen, das Risiko von Prompt-Injection-Angriffen zu verringern.
Für Anfänger besteht der empfohlene Ansatz darin, vertrauliche Informationen in einem Passwortmanager zu speichern und die von Diensten wie Replit, Lovable oder Vercel bereitgestellten Funktionen für Secrets oder Umgebungsvariablen zu verwenden. Wenn diese Funktionen nicht verfügbar sind, kann eine .env-Datei im Backend genutzt werden, sofern sie über .gitignore ausgeschlossen und niemals im Frontend der Anwendung offengelegt wird. TruffleHog kann dabei helfen, versehentlich durchgesickerte Secrets zu erkennen.
3. Anwendungsdaten schützen
Anwendungen, die große Datenmengen verarbeiten, können auf SQL-Datenbanken zurückgreifen, die durch SQL-Injection angegriffen werden können. Entwickler sollten die KI anweisen, Abfragen zu parametrisieren, Eingaben zu bereinigen, Server Actions für kritische Vorgänge zu verwenden und, sofern zutreffend, Row-Level Security mit geeigneten Richtlinien zu aktivieren.
Die Quelle rät außerdem zu überprüfen, ob das Projekt aktuelle Versionen seiner Bibliotheken verwendet. KI-Systeme können Pakete vorschlagen, die nicht existieren, oder unbeabsichtigt schädliche Abhängigkeiten einführen. Daher sollten generierte Empfehlungen überprüft werden, bevor sie übernommen werden.
4. Ratenbegrenzung hinzufügen
Eine Ratenbegrenzung schränkt ein, wie häufig ein Benutzer oder ein automatisiertes System eine Aktion ausführen kann. Sie kann dazu beitragen, Denial-of-Service-Aktivitäten, Brute-Force-Angriffe auf Passwörter und Credential-Stuffing-Versuche zu reduzieren.
Die geeigneten Grenzen hängen von der Anwendung ab. Ein Support-Chatbot könnte beispielsweise die Anzahl der von jedem Benutzer pro Tag verbrauchten Tokens begrenzen. Wo möglich, empfiehlt die Quelle, Aktivitäten zunächst anhand der Konto-ID statt anhand von IP-Adressen zu begrenzen, wodurch es schwieriger wird, Kontrollen mit einem VPN zu umgehen. E-Mail- oder Telefonverifizierungsabläufe und CAPTCHA können zusätzlichen Schutz vor unerwünschten Aktivitäten bieten.
5. Den generierten Code überprüfen und testen
Eine professionelle Softwareprüfung ist vorzuziehen. Entwickler können ein KI-Modell jedoch auch auffordern, nach Schwachstellen zu suchen und das Projekt anhand der OWASP Top 10 zu testen. Die Verwendung eines anderen Modells für eine zweite Prüfung kann Probleme aufdecken, die bei der ersten Prüfung übersehen wurden.
Die Quelle nennt mehrere Tools, die zur Bewertung von KI-generierten Projekten entwickelt wurden, darunter Claude Code Security, Codex Security, Stackhawks Wingman, CheckVibe, SafeToShip und der Vibe App Scanner. Sicherheitsprüfungen sollten auch nach dem Start fortgesetzt werden, da eine Überwachung erforderlich ist, um neue Probleme in einer bereitgestellten Anwendung zu erkennen.
Quellen: Engadget.