Server in Deutschland · DSGVO-konform
MLVibeScan
Wir finden die Sicherheitslücken in deiner App, bevor es jemand anderes tut.
Kein Konto nötig · Ergebnis in ca. 20 Sekunden · Wir speichern keine Kopie deines Codes
Damit gebaut? Dann bist du hier richtig.
- Lovable
- Bolt
- v0
- Cursor
- Windsurf
- Replit
- Claude Code
- Copilot
- Base44
- Firebase Studio
Was wir finden
Die Fehler, mit denen vibegecodete Apps live gehen
Zugangsdaten im Frontend
Stripe-, Supabase-, OpenAI- oder AWS-Schlüssel, die im ausgelieferten JavaScript stehen. Bots fischen sie automatisiert aus öffentlichen Bundles — die Rechnung kommt zu dir.
Offene Datenbank-Regeln
Supabase-Tabellen ohne Row Level Security. Der dafür nötige Schlüssel steht öffentlich in deiner App — jeder kann deine Nutzertabelle herunterladen.
Öffentliche Source Maps
Dein ungebauter Originalcode mit Dateinamen und Kommentaren, für jeden im Browser lesbar.
Fehlende Security-Header
CSP, HSTS, X-Frame-Options und die anderen. Ohne sie wird aus einer kleinen Lücke eine ausgenutzte.
Ungeschützte Anmeldung
Kein Limit für falsche Passwortversuche. Geleakte Passwortlisten durchzuprobieren dauert dann Minuten.
Zu großzügiges CORS
Wenn jede fremde Website im Namen deiner eingeloggten Nutzer auf deine API zugreifen darf.
Vergessene Dateien
.env, .git/config oder ein Datenbank-Dump, die versehentlich im öffentlichen Verzeichnis gelandet sind.
Verräterische Fehlerseiten
Stacktraces und Serverpfade in der Antwort — die Landkarte, die sich ein Angreifer sonst mühsam erarbeiten müsste.
TLS und Zertifikat
Abgelaufene oder ungültige Zertifikate, fehlende HTTPS-Weiterleitung, veraltete Verschlüsselung.
E-Mail-Fälschungsschutz
Fehlende SPF- und DMARC-Einträge. Ohne sie kann jeder Phishing-Mails mit deiner Absenderadresse verschicken.
Cookie-Sicherheit
Sitzungs-Cookies ohne HttpOnly oder Secure — die Eintrittskarte für eine Kontoübernahme.
Externe Sicherheitsdatenbanken
Ob deine Domain bereits als schädlich gemeldet wurde. Passiert nach einem Einbruch — oft, bevor du es selbst merkst.
Veraltete Bibliotheken
Welche JavaScript-Pakete du auslieferst und ob für genau diese Versionen bekannte Lücken dokumentiert sind. Öffentlich dokumentiert heißt: Die Anleitung zum Ausnutzen ist frei verfügbar.
Vergessene Umgebungen
Die staging- oder preview-Adresse, die seit Monaten mit Echtdaten und ohne Anmeldung läuft, weil niemand mehr daran denkt. Wir finden sie über das öffentliche Zertifikatsprotokoll.
Entwicklungsserver in Produktion
Wer beim Veröffentlichen npm run dev statt npm run build benutzt, betreibt öffentlich einen Server, der dafür nie gedacht war — inklusive eines Pfads, über den sich beliebige Dateien lesen lassen. Im Browser sieht man keinen Unterschied.
Fremder Code in deiner App
Pakete aus dokumentierten Angriffen auf die npm-Lieferkette, Code der Formulareingaben mitschneidet, Krypto-Miner. Nicht jeder Einbruch ist sichtbar — aber diese Spuren sind es.
Der kostenlose Scan deckt alles davon ab, was sich von außen erkennen lässt. Datenbank-Regeln und Passwort-Raten gehören zum vollständigen Report und brauchen zusätzlich den Nachweis, dass dir die Domain gehört.
Umfang
Wonach wir suchen
Nicht die Erkennungsregeln — die bleiben bei uns. Aber die Namen, damit du einschätzen kannst, ob dein Stack dabei ist.
- Supabase Row Level Security
- Firebase Security Rules
- Stripe Live Keys
- Übernehmbare Subdomains
- Offenes .git-Verzeichnis
- Unbeschränkte Google-Keys
- Dev-Server in Produktion
- Kompromittierte npm-Pakete
- Skimmer im Bundle
- Krypto-Miner
- Bösartige Service Worker
- GraphQL-Introspection
- Offene Swagger-Doku
- Metrics-Endpunkte
- Halluzinierte Paketnamen
- Passwörter im Klartext
- Archivierte .env-Dateien
- Ungeschützte API-Endpunkte
- Subresource Integrity
- Datenbank-Schema öffentlich
- Passwort-Reset-Flut
- OpenAI
- Anthropic
- AWS
- GitHub Token
- service_role
- Clerk
- Vercel
- Neon
- Upstash
- MongoDB Atlas
- Groq
- Replicate
- SendGrid
- Twilio
- Discord Bot Token
- JWT-Signaturgeheimnis
- Private Keys
- DB-Verbindungsstrings
- CSP
- HSTS
- X-Frame-Options
- Referrer-Policy
- Permissions-Policy
- CORS
- Cookie-Flags
- TLS-Zertifikat
- HTTPS-Weiterleitung
- SPF
- DMARC
- Source Maps
- .env
- .git/config
- package-lock.json
- Datenbank-Dumps
- Dockerfile
- Stacktraces
- Debug-Modus
- Rate-Limiting
- Passwort-Raten
- Sperrlisten-Eintrag
Der kostenlose Scan deckt alles davon ab, was sich von außen erkennen lässt. Datenbank-Regeln und Passwort-Raten gehören zum vollständigen Report und brauchen zusätzlich den Nachweis, dass dir die Domain gehört.
Bevor du auf „Publish" drückst
Was es kostet, es nicht zu wissen
Eine Lücke in einer vibegecodeten App ist keine kleinere Lücke, nur weil die App schnell entstanden ist. Sie steht im selben Internet wie alle anderen.
Gestohlene Schlüssel kosten sofort Geld
Automatisierte Bots durchsuchen öffentlich erreichbare JavaScript-Bundles gezielt nach Zugangsdaten. Ein OpenAI-, Stripe- oder AWS-Schlüssel im Frontend wird nicht irgendwann gefunden, sondern zeitnah — und dann bis zum Limit deines Kontos benutzt.
Die Rechnung geht an dich
Eine offene Datenbank ist ein meldepflichtiges Datenleck
Fehlt bei Supabase die Row Level Security, kann jeder mit dem öffentlichen Schlüssel aus deinem Frontend die komplette Nutzertabelle herunterladen. Sobald personenbezogene Daten betroffen sind, ist das kein technisches Problem mehr, sondern ein rechtliches.
Art. 33 DSGVO: 72 Stunden bis zur Meldung an die Aufsichtsbehörde
Betroffene können Schadenersatz verlangen
Nach Art. 82 DSGVO haben Betroffene einen eigenen Anspruch auf Ersatz — auch für immaterielle Schäden. Dazu kommt die Benachrichtigungspflicht gegenüber jedem einzelnen Nutzer nach Art. 34 und der Bußgeldrahmen nach Art. 83.
Als Einzelperson haftest du persönlich
Deine Domain kann auf Sperrlisten landen
Wird deine App übernommen und für Phishing missbraucht, melden Sicherheitsdienste die Domain. Browser zeigen dann eine ganzseitige Warnung, und deine E-Mails kommen nicht mehr an. Der Weg zurück dauert Wochen.
Auch nach der Bereinigung bleibt der Eintrag eine Weile
Dein Quellcode liegt offen
Versehentlich mitgelieferte Source Maps oder ein erreichbares .git-Verzeichnis geben deinen ungebauten Originalcode preis — inklusive aller Zugangsdaten, die jemals in der Versionsgeschichte standen, auch der längst gelöschten.
Jedes je committete Passwort gilt als kompromittiert
Vertrauen bekommst du nicht zurück
Der finanzielle Schaden lässt sich beziffern. Die E-Mail an deine Nutzer, in der du erklären musst, dass ihre Daten abgeflossen sind, ist die eigentliche Rechnung — und die zahlst du bei jedem künftigen Start mit.
Der Schaden überlebt das Projekt
Unsere Devise
Nichts veröffentlichen ohne Scan.
Zwanzig Sekunden vor dem Livegang. Kostenlos, ohne Konto, so oft du willst — und du weißt, was du da eigentlich ins Netz stellst.
Jetzt kostenlos prüfen„Claude Code hat meinen Code schon geprüft"
Gut so — und trotzdem bleibt eine Lücke. Nicht weil die Werkzeuge schlecht wären, sondern weil sie an einer anderen Stelle stehen als ein Angreifer.
Er sieht deinen Quellcode — nicht das, was ausgeliefert wird
Im Code steht `import.meta.env.VITE_STRIPE_KEY`, und das sieht völlig harmlos aus. Erst der Build setzt den echten Wert ein, und alles mit dem Präfix VITE_ oder NEXT_PUBLIC_ landet dabei absichtlich im Browser. Was am Ende im Bundle steht, sieht man nur am Bundle.
Er sieht deinen Code — nicht deinen Server
Security-Header, TLS-Zertifikat, HTTPS-Weiterleitung, CORS-Regeln und Cache-Verhalten kommen von Vercel, Netlify, nginx oder Cloudflare. Nichts davon steht in deinem Repository, also kann es dort auch niemand prüfen.
Er sieht deinen Code — nicht deine Datenbank
Ob Row Level Security in deinem Supabase-Projekt tatsächlich eingeschaltet ist, steht nirgends im Code. Das ist ein Schalter im Dashboard. Man kann es nur feststellen, indem man die Datenbank fragt.
Er schaut von innen — wir von außen
Ein Assistent prüft mit dem Wissen des Autors: Er kennt die Absicht hinter jeder Zeile. Wir kommen als anonymer Besucher an deine öffentliche Adresse — genau die Perspektive, aus der ein Angreifer schaut, und die einzige, die zählt.
Das Werkzeug bewertet seine eigene Arbeit
Wenn dasselbe Modell den Code geschrieben und geprüft hat, sind blinde Flecken kein Zufall, sondern zu erwarten: Was es beim Schreiben für richtig hielt, hält es beim Prüfen erneut für richtig. Eine zweite, unabhängige Instanz findet, was die erste für selbstverständlich hielt.
Er prüft einmal — nach jedem Deploy ist alles anders
Eine neue Umgebungsvariable, ein geändertes Hosting-Setup, ein zusätzliches Paket: Jede Auslieferung kann eine Lücke aufreißen, die gestern nicht da war. Bei uns ist der Scan kostenlos, also kannst du ihn zur Gewohnheit machen.
Deshalb ersetzt MLVibeScan deinen KI-Assistenten nicht — er prüft nach. Von außen, an deiner echten Adresse, an dem, was tatsächlich ausgeliefert wird. Ein zweites Paar Augen, das nicht mitgeschrieben hat.
Für Vibecoder
Gebaut mit KI? Dann ist das hier für dich.
Wenn du deine App mit einem dieser Werkzeuge gebaut hast, gehörst du zur Zielgruppe — und zwar nicht als Anfänger, sondern weil diese Werkzeuge alle denselben blinden Fleck haben.
KI-Werkzeuge schreiben Code, der funktioniert. Sie schreiben ihn nicht zwangsläufig sicher, und sie sagen dir nicht, wenn etwas fehlt. Ein Sprachmodell setzt einen Supabase-Aufruf ins Frontend, weil das die kürzeste Lösung ist — die Frage, ob dahinter Row Level Security greift, stellt es nicht. Es schreibt keine Security-Header, weil du nicht danach gefragt hast. Und es weiß nicht, welche Umgebungsvariablen bei deinem Build ins ausgelieferte Bundle wandern.
Das ist kein Vorwurf an die Werkzeuge. Es ist die Stelle, an der ein Blick von außen etwas findet, das von innen nicht sichtbar ist: MLVibeScan prüft deine App an der öffentlichen Adresse — an dem, was tatsächlich im Netz steht, nicht an dem, was im Editor steht.
Wofür dieser Scanner gemacht ist
- Apps aus Lovable, Bolt, v0, Base44 oder Firebase Studio
- Projekte aus Cursor, Windsurf, Claude Code, Copilot oder Replit
- Supabase- und Firebase-Backends mit Zugriff direkt aus dem Frontend
- Erste eigene SaaS-Produkte, MVPs und Nebenprojekte mit echten Nutzern
- Alles, was auf Vercel, Netlify oder Railway läuft
Wenn du dich in mehr als einem Punkt wiedererkennst, dauert der Scan zwanzig Sekunden und kostet nichts.
Datenschutz ist hier kein Kleingedrucktes
Wir verkaufen Sicherheit. Dann können wir schlecht selbst schludern.
Keine Kopie deines Codes
Wir laden deine Seite und deine JavaScript-Dateien, analysieren sie im Arbeitsspeicher und verwerfen sie unmittelbar danach. Gespeichert wird nur das Ergebnis — nie dein Code.
Server in Deutschland
Anwendung und Datenbank laufen ausschließlich in einem deutschen Rechenzentrum. Keine Übermittlung in Drittländer, keine Verarbeitung außerhalb der EU.
Automatisch gelöscht
Auch die Befunde verschwinden nach Ablauf der Frist von selbst. Kein Antrag nötig, keine Erinnerung — ein Löschlauf erledigt das stündlich.
Kein Konto, keine Anmeldung
Du gibst eine Adresse ein und bekommst ein Ergebnis. Wir legen kein Nutzerkonto an und fragen keine persönlichen Daten ab.
Keine Tracker, keine fremden CDNs
Diese Seite lädt nichts von Google, Meta oder sonstwo nach — auch nicht die Schriftart. Deine IP-Adresse verlässt unseren Server nicht.
Nur lesend, nie eingreifend
Der Scanner ruft deine Seite ab wie ein Besucher. Er verändert nichts, legt nichts an und löscht nichts.
Erst schauen, dann entscheiden
Der Scan ist kostenlos. Bezahlt wird nur, wenn wir etwas gefunden haben, das du beheben willst — einmalig, ohne Abo.
Scan
Kostenlos
Ohne Konto, ohne Zahlungsdaten
- Alle passiven Prüfungen
- Anzahl und Schweregrad aller Funde
- Nach Kategorie aufgeschlüsselt
- Sicherheitsnote von A bis F
Vollständiger Report
Endpreis · Rechnung inklusive · kein Abo
- Was genau gefunden wurde — im Klartext
- Wo es steht: Datei, Zeile, Fundstelle
- Fertiger Fix-Prompt zum Einfügen in Cursor & Co.
- Report als PDF zum Ausdrucken und Weitergeben
- Tiefenprüfung deiner Datenbank-Regeln nach Domain-Nachweis
Freigeschaltet wird genau die eine gescannte Adresse — dauerhaft, solange der Report bei uns liegt.
Häufige Fragen
Was du vor dem ersten Scan wissen solltest
Was ist MLVibeScan?
MLVibeScan ist ein Sicherheitsscanner für Web-Apps, die mit KI-Werkzeugen wie Lovable, Bolt, v0, Cursor oder Replit gebaut wurden. Du gibst die Adresse deiner App ein und bekommst in etwa zwanzig Sekunden eine Übersicht über gefundene Sicherheitsprobleme — kostenlos und ohne Konto. Einen Teil der leichteren Befunde zeigen wir dabei vollständig, damit du siehst, wie ein Befund aussieht. Der vollständige Bericht mit allen Fundstellen und Anleitungen zum Beheben kostet einmalig 9,49 Euro pro Domain und schließt beliebig viele Nachtests ein.
Was kostet ein Scan?
Der Scan selbst ist kostenlos und beliebig oft wiederholbar. Bezahlt wird nur der vollständige Bericht: 9,49 Euro einmalig für die geprüfte Domain, mit Rechnung. Der angezeigte Preis ist der Endpreis; gemäß § 19 UStG wird keine Umsatzsteuer berechnet. Bezahlen kannst du mit PayPal oder Karte. Es gibt kein Abonnement und keine wiederkehrende Zahlung. Nach dem Kauf kannst du dieselbe Domain 90 Tage lang beliebig oft erneut prüfen — nach dem Beheben zeigt ein neuer Scan, ob es gewirkt hat.
Brauche ich ein Konto?
Nein. MLVibeScan legt kein Nutzerkonto an und verlangt keine Anmeldung. Du gibst eine Adresse ein und bekommst ein Ergebnis. Auch für den Kauf des vollständigen Berichts ist keine Registrierung nötig.
Wird mein Quellcode gespeichert?
Nein. Die Seite und ihre JavaScript-Dateien werden geladen, im Arbeitsspeicher ausgewertet und unmittelbar danach verworfen. Auf einen Datenträger geschrieben wird nur das Ergebnis — also welche Art von Problem an welcher Stelle gefunden wurde. Gefundene Zugangsdaten werden dabei gekürzt gespeichert, sodass kein verwertbarer Schlüssel bei uns liegt.
Wo stehen die Server?
Ausschließlich in Deutschland. Anwendung und Datenbank laufen in einem deutschen Rechenzentrum, es gibt keine Übermittlung in Drittländer. Die Seite lädt außerdem keine Inhalte von fremden Servern nach — auch die Schriftart wird selbst ausgeliefert, damit die IP-Adresse der Besucher nicht an Google geht.
Wie lange werden meine Ergebnisse aufbewahrt?
Berichte werden nach neunzig Tagen automatisch und vollständig gelöscht, auch bezahlte. Ein Löschlauf erledigt das stündlich; ein Antrag ist nicht nötig. Das konkrete Löschdatum steht auf jedem Bericht. Wer einen gekauften Bericht dauerhaft behalten will, speichert ihn als PDF.
Wonach sucht MLVibeScan?
Nach den Fehlern, mit denen KI-generierte Apps typischerweise live gehen: Zugangsdaten wie Stripe-, Supabase-, OpenAI- oder AWS-Schlüssel im Frontend-Code, Passwörter im Klartext, Supabase-Tabellen ohne Row Level Security, offene Firebase Security Rules, JavaScript-Bibliotheken mit bekannten Sicherheitslücken, erfundene Paketnamen aus KI-Vorschlägen, übernehmbare Subdomains, vergessene Test- und Vorschau-Umgebungen, öffentlich erreichbare Source Maps und Git-Verzeichnisse, fehlende Security-Header, fehlendes Rate-Limiting auf Anmeldung und Passwort-Reset, zu großzügige CORS-Regeln, versehentlich veröffentlichte Dateien wie .env oder .git, ungültige TLS-Zertifikate, unsichere Cookies und fehlende SPF- und DMARC-Einträge.
Wie gründlich ist der Scan wirklich?
Der Scan besteht aus rund zwanzig eigenständigen Prüfungen und stützt sich auf einen Katalog von etwa siebzig Erkennungsmustern — allein fünfzig davon für Zugangsdaten unterschiedlicher Anbieter, von Stripe und Supabase über OpenAI und AWS bis zu Vercel, Neon, Groq und Shopify. Dazu kommen vier externe Datenquellen: OSV.dev für bekannte Sicherheitslücken in deinen Paketen, das öffentliche Zertifikatsprotokoll für vergessene Subdomains, das Internet-Archiv für Dateien, die einmal öffentlich waren und dauerhaft abrufbar bleiben, sowie eine unabhängige Zweitbewertung deiner Security-Header. Welche Muster genau greifen, veröffentlichen wir nicht — sonst wüsste jeder, wie man sich daran vorbeischreibt. Die geprüften Bereiche stehen aber vollständig auf der Startseite.
Was ist der Deep-Scan und wie komme ich dran?
Der kostenlose Scan prüft alles, was von außen erkennbar ist, ohne deinen Server anders zu behandeln als ein normaler Besucher. Der Deep-Scan geht darüber hinaus: Er fragt deine Datenbank tatsächlich ab und stellt fest, ob Supabase- oder Firebase-Tabellen ohne Anmeldung lesbar sind. Er prüft, ob dein Google-Schlüssel ohne Einschränkung gegen kostenpflichtige APIs benutzt werden kann. Er ruft die API-Endpunkte aus deinem Frontend ohne Anmeldung auf und sieht nach, ob echte Daten zurückkommen. Und er testet, ob sich Passwörter unbegrenzt durchprobieren lassen. Diese vier Prüfungen finden die schwerwiegendsten Befunde überhaupt.
Welche Voraussetzungen hat der Deep-Scan?
Zwei, und beide sind nötig. Erstens gehört der Deep-Scan zum vollständigen Report — er ist der aufwendigste Teil der Prüfung und deshalb im Preis von 9,49 Euro enthalten, nicht im kostenlosen Scan. Zweitens musst du nachweisen, dass die Domain dir gehört. Der zweite Punkt lässt sich nicht durch den ersten ersetzen: Eine Zahlung ist keine Einwilligung des Betreibers. Sonst könnte jemand für 9,49 Euro aktive Prüfungen gegen einen Konkurrenten in Auftrag geben, und wir hätten sie ausgeführt. Nach dem Kauf siehst du zuerst alle Befunde des passiven Scans im Klartext und führst dann den Nachweis, um den Deep-Scan zu starten.
Wie weise ich nach, dass mir die Domain gehört?
Drei Wege stehen zur Wahl, du brauchst nur einen. Erstens ein DNS-TXT-Eintrag: Wir zeigen dir Name und Wert, du trägst ihn in deiner Domainverwaltung ein. Zweitens ein Meta-Tag, das du in den head deiner Startseite einfügst und neu veröffentlichst. Drittens ein Sicherheitscode per E-Mail: Wir schicken einen sechsstelligen Code an eine feste Rollenadresse deiner Domain — admin@, webmaster@, postmaster@, hostmaster@, administrator@ oder security@ — und du gibst ihn bei uns ein. Der dritte Weg funktioniert auch dann, wenn du weder an die Domainverwaltung noch an den Quellcode kommst, aber das Postfach liest. Die Zieladresse kannst du nicht frei eingeben, sondern nur aus dieser Liste wählen: Wäre sie frei wählbar, könnte jeder seine eigene Adresse angeben und damit jede fremde Domain bestätigen. Der Code gilt 30 Minuten, erlaubt fünf Versuche und wird bei uns nur als Hash gespeichert.
Was bekomme ich für die Freischaltung?
Der kostenlose Bericht zeigt dir, wie viele Befunde es gibt, wie schwer sie wiegen und in welchem Bereich sie liegen. Einen Teil der leichteren Befunde zeigen wir vollständig, damit du siehst, wie ein fertiger Befund aussieht. Die Freischaltung öffnet den Rest: zu jedem Befund die genaue Fundstelle mit Datei und Zeile, den Beweisauszug, und eine fertige Anleitung zum Beheben, die du direkt in Cursor, Claude Code oder deinen Editor kopieren kannst. Dazu den kompletten Bericht als PDF zum Herunterladen und Weitergeben. Und — für viele der wichtigste Punkt — beliebig viele Nachtests: Du behebst die Befunde, scannst erneut und siehst sofort, ob es gewirkt hat. Neunzig Tage lang, ohne weitere Kosten, für alle künftigen Scans derselben Domain.
Darf ich fremde Websites scannen?
Nur mit Erlaubnis des Betreibers. Der kostenlose Scan ist deshalb rein passiv: Er ruft die Seite so ab, wie es jeder Browser und jeder Suchmaschinen-Crawler auch tut, und verändert nichts. Tiefergehende Prüfungen, die echte Anfragen an die Datenbank oder die Anmelderoute stellen, laufen erst, nachdem du über einen DNS-Eintrag oder ein Meta-Tag nachgewiesen hast, dass dir die Domain gehört.
Reicht es nicht, wenn Claude Code oder Cursor meinen Code prüft?
Nein, weil diese Werkzeuge an einer anderen Stelle stehen als ein Angreifer. Sie sehen deinen Quellcode, nicht das fertig gebaute Bundle, in dem Umgebungsvariablen erst eingesetzt werden. Sie sehen dein Repository, nicht die Security-Header deines Hosters, nicht dein TLS-Zertifikat und nicht den Schalter für Row Level Security in deinem Supabase-Dashboard. Und wenn dasselbe Modell den Code geschrieben und geprüft hat, sind blinde Flecken zu erwarten. MLVibeScan prüft von außen, an deiner öffentlichen Adresse, an dem, was tatsächlich ausgeliefert wird.
Verändert der Scan etwas an meiner App?
Nein. Der Scanner liest nur. Er ruft Seiten ab, liest Antwort-Header und DNS-Einträge und prüft das TLS-Zertifikat. Er legt nichts an, ändert nichts und löscht nichts. Selbst die Prüfung der Datenbank-Regeln nach Domain-Nachweis stellt ausschließlich lesende Abfragen.
Was bedeutet ein Bericht ohne Befunde?
Dass unsere Prüfungen nichts gefunden haben — nicht, dass deine App sicher ist. Ein automatischer Scan findet häufige, von außen erkennbare Fehlkonfigurationen. Logikfehler, Rechteprobleme innerhalb der Anwendung und alles, was eine Anmeldung voraussetzt, liegen außerhalb dessen, was von außen sichtbar ist. Ein Bericht ohne Befunde ersetzt keinen Penetrationstest.
Wie oft sollte ich scannen?
Vor jeder Veröffentlichung. Eine neue Umgebungsvariable, ein geändertes Hosting-Setup oder ein zusätzliches Paket kann eine Lücke aufreißen, die beim letzten Deploy nicht da war. Weil der Scan kostenlos und beliebig oft wiederholbar ist, lässt er sich zur Gewohnheit machen: nichts veröffentlichen ohne Scan.