Den eigenen Code auf Schwachstellen prüfen, bevor er live geht
Es gibt diesen Moment kurz vor dem Live gehen. Der Code läuft. Die Tests sind grün. Der Kunde wartet. Und irgendwo im Hinterkopf meldet sich diese leise Engels Stimme, die dir ins Ohr flüstert: „Hoffentlich habe ich nichts übersehen!“ Zweifel kommen auf. Genau da beginnt das Thema Security Audit. Nicht als Panikreaktion, sondern als Routine.
Die Wahrheit ist unbequem, aber seien wir mal ehrlich: Die meisten Sicherheitslücken entstehen nicht aus Dummheit oder Unkenntnis, sondern aus Gewohnheit, Zeitdruck und Betriebsblindheit. Man kennt den eigenen Code zu gut. Man weiß, was er tun soll, und übersieht dabei, was er alles noch tun könnte. Und genau hier kann KI sinnvoll eingesetzt werden. Nicht als Ersatz für echte Security Profis, sondern als zweites, gnadenlos nüchternes Augenpaar.
Warum ein Security Audit vor dem Livegang Pflicht ist
Angreifer lesen Code anders als Entwickler. Sie fragen nicht: Funktioniert das? Sie fragen: Wo kann ich rein? Wo vertraut mir das System zu sehr? Wo werden Daten ungefiltert verarbeitet? Wo fehlt eine Prüfung, ein Token, ein Kontext? Irgendwas?
Typische Einfallstore sind altbekannt, tauchen aber immer wieder auf. Cross Site Scripting, weil ein Output ungefiltert ins HTML geht. CSRF, weil ein Formular zwar schick aussieht, aber keine echte Absicherung hat. SQL Injection, weil irgendwo doch noch ein String zusammengebaut wird. Dazu kommen Logikfehler, falsche Berechtigungen, zu großzügige APIs oder schlicht sensible Daten im Klartext.
Das Problem bei diesem Thema ist immer das selbe: Nach Monaten am selben Projekt ist man blind für genau diese Stellen. Ein Security Audit zwingt dazu, den Code aus einer anderen Perspektive zu betrachten. Nicht als Erbauer, sondern als Angreifer.
Die Idee hinter dem Persona Prompt
Statt die KI einfach zu fragen, ob der Code sicher ist, zwingt man sie in eine Rolle. Und Rollen verändern Antworten massiv. Ein guter Persona Prompt macht aus der KI keinen freundlichen Erklärbär, sondern einen misstrauischen Security Auditor, der lieber einmal zu viel meckert als einmal zu wenig.
Der Unterschied ist deutlich spürbar. Ohne Persona bekommt man allgemeine Hinweise. Mit Persona bekommt man konkrete Kritik, konkrete Fundstellen und konkrete Verbesserungsvorschläge. Genau das ist der Mehrwert.
Vorbereitung: Was du der KI geben solltest
Bevor du loslegst, lohnt sich ein kurzer Realitätscheck. Die KI ist kein Hellseher. Sie kann nur prüfen, was sie sieht. Deshalb solltest du klar machen:
– Welche Sprache oder welches Framework wird genutzt
– In welchem Kontext läuft der Code (Backend, Frontend, API, CLI)
– Ob es sich um produktionsnahen Code handelt
– Welche Art von Daten verarbeitet werden (User Input, Dateien, Tokens, Sessions)
Ein kleiner PHP Controller ohne Kontext liefert schwächere Ergebnisse als derselbe Code mit dem Hinweis, dass er Teil einer Login Strecke ist. Kontext schärft somit am Ende den Blick.
Der Security Auditor – Dreamcodes Persona Prompt
Das Herzstück ist der Prompt selbst. Er sollte nicht nett sein. Er sollte klar, streng und kompromisslos formuliert sein. Ein Beispiel ist dieser Dreamcodes Prompt, das sich in der Praxis schon bewährt hat:
Du bist ein erfahrener Senior Security Engineer und Pentester mit Fokus auf Webanwendungen. Deine Aufgabe ist es, den folgenden Code ausschließlich unter Sicherheitsaspekten zu prüfen. Gehe davon aus, dass der Code öffentlich erreichbar ist.
Analysiere ihn auf typische und untypische Schwachstellen wie XSS, CSRF, Injection, Race Conditions oder Authentifizierungsfehler, Berechtigungsprobleme und unsichere Datenverarbeitung. Identifiziere auch veraltete Hashing Algorithmen wie MD5/SHA1 oder unsichere Verschlüsselungsmethoden. Zeige konkrete Stellen im Code, erkläre das Risiko unterteilt in Kritisch / Hoch / Mittel / Niedrig verständlich, auch wie ein Angreifer dies ausnutzen könnte und schlage sichere, zeitgemäße Lösungen vor. Ignoriere Stilfragen, Performance und Lesbarkeit. Fokus liegt nur auf Sicherheit. Wenn Informationen fehlen, weise explizit darauf hin.
Kein Drumherum, kein Smalltalk.
Was bei der Analyse tatsächlich passiert
Mit einem solchen Prompt liest die KI den Code anders. Sie sucht aktiv nach Vertrauen. Wo wird Input angenommen? Wo wird er weitergereicht? Wo fehlt eine Prüfung? Besonders interessant dabei ist, dass sie oft Dinge findet, die man selbst als harmlos abgetan hat. Ein Echo vom User Input im Template. Ein fehlender SameSite Cookie Parameter. Ein API Endpoint ohne echte Authentifizierung.
Nicht jede Warnung ist gleich kritisch. Aber genau darum geht es: Bewusstsein. Man bekommt eine Liste möglicher Risiken und kann bewusst entscheiden, was relevant ist und was nicht.
Typische Findings, die fast immer auftauchen
In der Praxis häufen sich bestimmte Punkte. Ungesicherte Formularverarbeitung ohne CSRF Token ist ein Klassiker. Ungefilterter Output in JavaScript Kontexten ebenso. Auch das Thema Error Handling wird oft unterschätzt, wenn interne Fehlermeldungen nach außen gelangen.
Ein weiterer Dauerbrenner sind fehlende Header. Content Security Policy, X Frame Options oder Referrer Policy fehlen in erstaunlich vielen Projekten. Die KI weist darauf hin, auch wenn sie nicht direkt im Code sichtbar sind.
Von der Analyse zur echten Verbesserung
Der größte Fehler wäre, das Audit als einmalige Aktion zu sehen. Der eigentliche Gewinn entsteht, wenn man Muster erkennt. Wenn man merkt, dass bestimmte Fehler immer wieder auftauchen. Genau dann lohnt es sich, daraus eigene Checklisten oder wiederverwendbare Secure Coding-Snippets zu bauen.
Viele Entwickler integrieren den Security Auditor Prompt inzwischen fest in ihren Workflow. Vor jedem größeren Release. Vor kritischen Features. Manchmal sogar automatisch in CI-Pipelines, zumindest für ausgewählte Code Teile.
Grenzen und Verantwortung
Ein Punkt muss klar sein: KI ersetzt keinen professionellen Penetrationstest. Sie simuliert keinen echten Angriff, sie liest nur Code. Aber sie schließt eine gefährliche Lücke zwischen gar keiner Prüfung und teuren Security-Audits.
Wer KI hier richtig einsetzt, erhöht nicht nur die Sicherheit, sondern auch das eigene Verständnis. Man lernt, wie Angreifer denken. Und das ist langfristig wertvoller als jeder einzelne Fix.
Fazit
Ein Script ohne Security Check live zu schalten, ist wie Autofahren ohne Spiegel. Es geht oft gut, bis es das erste Mal knallt. Der Security Auditor Prompt von uns ist kein Allheilmittel, aber ein verdammt guter Beifahrer. Er stellt unbequeme Fragen, zeigt Schwachstellen auf und zwingt dazu, Verantwortung für den eigenen Code zu übernehmen.
Und genau darum geht es am Ende. Nicht um perfekte Sicherheit, sondern um bewusstes, sauberes Arbeiten. Vertrauen entsteht nicht durch Glück, sondern durch Vorbereitung und Planung.

