Zum Inhalt springen

Scannen Sie eine öffentliche Seite auf 25 Arten von geleakten Secrets

Apps, die per Vibe Coding entstehen, liefern oft Keys an den Browser aus. Geben Sie die Adresse einer einzelnen Seite ein, die Sie betreiben. Der Scanner liest das HTML dieser Seite und die verlinkten Skriptdateien nach API-Keys, Tokens und Datenbank-URLs, die ein Besucher kopieren könnte. Werte werden maskiert angezeigt.

Zu scannende Seite

Eine Seite, nicht die ganze Website.Der Scan liest diese Adresse und die Skripte, die sie verlinkt. Um eine andere Seite zu prüfen, scannen Sie auch deren Adresse.

Bestätigen Sie, dass Sie ein Mensch sind

So bleiben automatisierte Anfragen vom Dienst fern.

Es werden nur die öffentlichen Dateien der eingegebenen Adresse aus dem Netzwerk von Cloudflare abgerufen. Es wird nichts gespeichert.

Ergebnis

Was dieser Scan nicht sehen kann

Der Scanner liest nur die Dateien, die der Browser eines Besuchers von der Seite lädt. Er sieht keine Secrets, die auf dem Server bleiben, keine Seiten hinter einer Anmeldung, keine Dateien, die später per import() geladen werden, und keine Source Maps. Ein sauberes Ergebnis beweist nicht, dass die App sicher ist.

Alle 25 Key-Typen

20 davon sind Secrets, die nie in einen Browser gelangen dürfen. 5 sind von Haus aus öffentlich.

Keys mit der Markierung öffentlich, etwa ein Supabase-anon-Key, ein Firebase-apiKey oder ein Stripe-Publishable-Key, sind für den Browser gedacht. Sie sind nur sicher, solange Ihre Datenbankregeln die Daten dahinter schützen.

Key-TypIDSchweregradArt
OpenAI-API-Keyopenai-keyKritischSecret
Anthropic-API-Keyanthropic-keyKritischSecret
Stripe-Live-Secret-Keystripe-secretKritischSecret
Stripe-Test-Secret-Keystripe-test-secretMittelSecret
Stripe-Publishable-Keystripe-publishableInfoVon Haus aus öffentlich
AWS-Access-Key-IDaws-access-keyHochSecret
AWS-Secret-Access-Keyaws-secretKritischSecret
GitHub-Tokengithub-tokenKritischSecret
Google-API-Keygoogle-api-keyInfoVon Haus aus öffentlich
apiKey der Firebase-Web-Konfigurationfirebase-web-configInfoVon Haus aus öffentlich
Supabase-service_role-Keysupabase-service-role-jwtKritischSecret
Supabase-anon-Keysupabase-anon-jwtInfoVon Haus aus öffentlich
JSON Web Tokenjwt-otherNiedrigSecret
Supabase-Secret-Keysupabase-secret-keyKritischSecret
Supabase-Publishable-Keysupabase-publishable-keyInfoVon Haus aus öffentlich
Slack-Tokenslack-tokenKritischSecret
Slack-Webhook-URLslack-webhookHochSecret
SendGrid-API-Keysendgrid-keyKritischSecret
Twilio-API-Key-SIDtwilio-keyHochSecret
Mailgun-API-Keymailgun-keyHochSecret
Private-Key-Blockprivate-key-blockKritischSecret
Datenbank-URL mit Passwortdatabase-urlKritischSecret
npm-Tokennpm-tokenKritischSecret
Hugging-Face-Tokenhuggingface-tokenHochSecret
Resend-API-Keyresend-keyHochSecret

Fragen

Was liest der Secret-Scanner?

Er liest das HTML der Seite und bis zu 14 verlinkte Skriptdateien, insgesamt 3 MB, vom HTML die ersten 512 KB und von jeder Datei die ersten 1 MB. Er sucht nach bekannten Key-Formaten, etwa API-Keys, Access-Tokens, Private-Key-Blöcken und Datenbank-URLs mit Passwort.

Wo läuft der Scan und wie lange dauert er?

Der Scan läuft in Ihrem Browser; unser Server ruft dafür nur die Dateien ab, eine Anfrage pro Datei. Es wird nichts gespeichert. Bei einer langsamen Website kann ein Scan bis zu etwa anderthalb Minuten dauern.

Was kann der Scanner nicht sehen?

Secrets, die nur auf dem Server liegen, Seiten hinter einer Anmeldung, Chunks, die die Seite später per import() lädt, und Source Maps. Er kann auch nicht erkennen, ob ein gefundener Key noch aktiv ist. Ein sauberes Ergebnis beweist nicht, dass die App sicher ist.

Warum sind manche Keys als von Haus aus öffentlich markiert?

Ein Supabase-anon- oder -Publishable-Key, ein Firebase-apiKey, ein Google-API-Key und ein Stripe-Publishable-Key sind dafür gemacht, an den Browser gesendet zu werden. Sie identifizieren Ihr Projekt und erlauben nur, was Ihre Datenbankregeln, API-Beschränkungen und Server-Prüfungen zulassen. Sie werden gemeldet, damit Sie bestätigen können, dass diese Regeln existieren, nicht weil der Key selbst ein Leak wäre.

Was tun, wenn ein echtes Secret geleakt ist?

Rotieren Sie es zuerst: Erstellen Sie beim Anbieter einen neuen Key und widerrufen Sie den alten. Legen Sie den neuen Key dann in serverseitigen Code oder Umgebungsvariablen und deployen Sie neu. Den Key aus dem Code zu löschen reicht nicht, denn der alte Wert bleibt in früheren Builds, Caches und der Git-Historie.

Warum leaken per Vibe Coding gebaute Apps so oft Keys?

Schnell mit KI-Tools geschriebener Code ruft oft eine kostenpflichtige oder privilegierte API direkt aus dem Browser auf, und der Key landet im Skript, das jeder Besucher lädt. Vibe-Coding-Security beginnt damit, solche Aufrufe auf dem Server zu halten.