docs: BREACH-Marker auf SPA-Root / als bewusst akzeptiert dokumentieren
Pentest-Tools (testssl) melden BREACH weiter für die Root-URL, weil die SPA-index.html bewusst weiter gzip-komprimiert ausgeliefert wird (Performance: 50 KB → ~10 KB). Das ist nicht ausnutzbar, weil keine Secrets/Reflektionen im HTML-Body sind. README erklärt jetzt explizit warum + wie man es trotzdem loswerden kann (zusätzliche NPM-Custom- Location für /, Trade-off: 40 KB extra pro Tab-Reload). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -290,6 +290,23 @@ curl -sI https://kundencenter.deine-domain.de/api/health \
|
||||
| grep -iE '^(server|x-served-by):'
|
||||
```
|
||||
|
||||
#### Was mit gzip auf `/` (SPA-HTML) ist
|
||||
|
||||
Pentest-Tools wie `testssl` melden BREACH **trotzdem weiter** für die
|
||||
Root-URL `/`, weil die SPA-`index.html` bewusst weiter gzip-komprimiert
|
||||
ausgeliefert wird (Performance: 50 KB → ~10 KB). Das ist **bewusst
|
||||
akzeptiert**, weil der Angriff dort nicht ausnutzbar ist:
|
||||
|
||||
- Die `/`-Response ist die statische `index.html` aus dem Vite-Build
|
||||
- Sie reflektiert **keinen user-controlled Input**
|
||||
- Sie enthält **keine Secrets** (JWT-Access ist im `Authorization`-Header,
|
||||
Refresh-Token im httpOnly-Cookie – beides nicht im HTML-Body)
|
||||
|
||||
Ohne Secret-im-Body und ohne Input-Reflektion hat BREACH keinen Hebel.
|
||||
Wer den Audit-Marker trotzdem loswerden will, fügt eine weitere
|
||||
NPM-Custom-Location für `/` mit `gzip off;` hinzu – kostet aber 40 KB
|
||||
extra pro Tab-Reload.
|
||||
|
||||
## Developer-Tools aktivieren
|
||||
|
||||
Die Developer-Tools (Datenbankstruktur, ER-Diagramm) sind standardmäßig für Admins verfügbar. Falls der Menüpunkt nicht erscheint:
|
||||
|
||||
Reference in New Issue
Block a user