0
OP Regular Newbie Apr 17, 2026 6:24pm

Severity: CRITICAL

Location: src/Controllers/AdminBrandingController.php:287-288

Bug: image/svg+xml in allowed MIME list; SVG goes to public/assets/branding/ unchanged. SVG

Fix: Drop SVG from allowed MIMEs or run through an SVG sanitizer.

Status: open. Will reply with remediation details when resolved.

0
Regular Newbie Apr 17, 2026 6:30pm

Resolved.

Removed image/svg+xml from the allowed-MIME list in AdminBrandingController::handleBrandingUpload (src/Controllers/AdminBrandingController.php).

Super admins can still upload JPG, PNG, WEBP for logos and covers, and ICO for the favicon — but SVG is refused with a clear error message explaining why.

Rationale: branding assets are loaded on every page, so one SVG containing <script> or onload= would be stored XSS against every visitor. Raster formats only avoids the need to embed an SVG sanitizer dependency.

If we need SVG branding in the future, the right fix is enshrined/svg-sanitize before storage — but that's a larger change with a new dependency; not worth shipping today.

Locking this thread.

Log in or register to reply to this thread.

We use cookies to enhance your experience on 6502ish.com. Essential cookies keep the site running. Analytics cookies help us understand how the site is used. Cookie Settings | Privacy Policy