Description
LibreDesk before 2.9.0-rc.8 contains a stored cross-site scripting vulnerability that allows authenticated agents to execute script by uploading SVGs with malformed Content-Type parameters. Attackers can upload an SVG typed 'image/svg+xml; x' via /api/v1/media so GET /uploads/{uuid} serves it inline without sandbox, running script in any viewing agent's or administrator's session.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| abhinavxd | libredesk | < 2.9.0-rc.8 | 2.9.0-rc.8 |
References
- https://github.com/abhinavxd/libredesk/pull/641 patch issue-tracking
- https://github.com/abhinavxd/libredesk/commit/ab3a5ca682fcc1caec0950fc607b66caea49bec3 patch
- https://github.com/abhinavxd/libredesk/blob/086b08200d667f2cc083635e925d6f5e7b0097e3/cmd/media.go#L255-L272 technical-description
- https://github.com/abhinavxd/libredesk/blob/086b08200d667f2cc083635e925d6f5e7b0097e3/internal/media/media.go#L422-L433 technical-description
- libredesk v2.9.0-rc.8 Release Notes release-notes
- https://github.com/abhinavxd/libredesk product
- VulnCheck Advisory: LibreDesk before 2.9.0-rc.8 Stored XSS via SVG Upload Content-Type Parameter third-party-advisory