Logo-upload vertrouwde browser-gerapporteerd MIME-type #92
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jesse-a/OpenCRM#92
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Severity: MEDIUM
uploadLogo()insrc/app/actions/settings.tsvertrouwdefile.typeblindelings. Een aanvaller kon een PHP-bestand metContent-Type: image/png-header uploaden. De server stuurtnosniff-headers dus directe XSS was niet exploiteerbaar, maar het is geen sterke verdediging.Fix: magic-bytes-verificatie. PNG (
89 50 4E 47 0D 0A 1A 0A) en JPG (FF D8 FF) headers worden gelezen en vergeleken met het beweerde MIME-type. Mismatch → upload geweigerd.logoMimeTypein DB wordt overschreven met het FEITELIJK gedetecteerde type.Files: src/app/actions/settings.ts
Opgelost in commit
fbc8fdf.