096aa63c6f
Bug: Stage-1-Kommentar behauptete fälschlicherweise, das Frontend setze eine CSP via meta-Tag – passierte nie. Helmet-CSP war auf false, kein CSP-Header im Response. Pentest-Tool hat das richtig moniert. Fix: Helmet-CSP eingeschaltet mit SPA-tauglichen directives: default-src 'self' script-src 'self' (Vite baut Module-Scripts zu separaten Files) style-src 'self' 'unsafe-inline' (Tailwind/inline-styles) img-src self/data/blob (base64-Avatare, blob-PDFs) font-src self/data connect-src 'self' (API only) frame-ancestors 'none' (Clickjacking-Schutz, ersetzt X-Frame-Options) object-src 'none' (kein Flash/<object>) base-uri 'self' form-action 'self' upgrade-insecure-requests Live-verifiziert: - Frontend index.html hat keine inline-scripts und keine externen Resources (Vite-Production-Build) → CSP bricht nichts. - Header gesetzt: Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>