Zum Inhalt springen

Prüfregel · RSC-SEC-068

Edge Function ohne JWT-Prüfung

SicherheitSchweregrad: HochCWE-306OWASP A01:2021

Findet `verify_jwt = false` in `supabase/config.toml` — die Serverfunktion ist ohne Anmeldung aufrufbar.

Warum das zählt

Supabase prüft standardmäßig den Bearer-Token, bevor eine Edge Function überhaupt startet. Ist `verify_jwt = false` gesetzt, entfällt diese Schranke: Der Endpunkt ist für jeden im Internet aufrufbar, ohne Konto und ohne Anmeldung.

Die Einstellung landet fast immer aus einem legitimen Grund im Projekt — ein Zahlungs- oder Mail-Webhook kann keinen Nutzer-Token mitschicken. Der Fehler ist nicht das Abschalten, sondern das, was danach fehlt: die eigene Prüfung des Aufrufers.

Fix: Für nutzerbezogene Funktionen die Prüfung eingeschaltet lassen. Für Webhooks die Signatur des Anbieters in der Funktion verifizieren (Stripe, GitHub und Co. senden dafür einen Header) und zusätzlich prüfen, dass der Aufruf zum erwarteten Vorgang gehört.

Prüfstufe

Repo-Zugang (Deep-Scan)

So behebt ihr es

Prüfung aktiviert lassen; bei Webhooks stattdessen die Signatur des Absenders in der Funktion verifizieren.

Eigene App kostenlos prüfen