Files
opencrm/backend
duffyduck 617022e492 Multer-Upload-Errors: 415/413 statt 500
Pentest 2026-05-30 INFO: Upload-Endpoints lieferten 500 statt
sauberem 4xx, wenn der fileFilter den MIME-Type ablehnte
(z.B. WebP/GIF, die gar nicht in der Allowlist standen) oder
LIMIT_FILE_SIZE getroffen wurde.

Ursache: fileFilter rief cb(new Error(...)) – multer wirft das
weiter, und ohne dedizierten Error-Handler endete es als 500
"Interner Serverfehler" mit Stack-Trace im Log.

Fix:
- WebP + GIF in die Allowlist von upload.routes.ts (Bug-Pen-
  test-Erwartung des Reporters).
- Globaler Express-Error-Handler in index.ts unterscheidet jetzt:
    * MulterError code=LIMIT_FILE_SIZE → 413 "Datei ist zu groß"
    * andere MulterError                → 400 "Upload-Fehler: ..."
    * Error mit "...erlaubt"-Message    → 415 mit Original-Message
    * sonst                             → bisheriger 4xx/500-Pfad

Live-verifiziert:
  WebP/GIF/JPG → 200
  SVG / text/plain → 415 + klare Message
  11 MB PDF → 413 "Datei ist zu groß"

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-30 09:59:06 +02:00
..
2026-01-29 01:16:54 +01:00