Skip to main content
← All vulnerabilities
CVE-2026-54179GHSA-8HW4-7QJR-3WXG

backpack/crud: SingleBase64Image accepts any base64 payload behind a `data:image` prefix — SVG-with-script lands on the public disk

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 6.8.14, 7.0.38
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

backpack/crud provides Create, Read, Update & Delete (CRUD) functions for Backpack, a collection of Laravel packages that help users build custom administration panels. From 6.0.0 until 6.8.14 and 7.0.37, the src/app/Library/Uploaders/SingleBase64Image.php methods SingleBase64Image::uploadFiles and SingleBase64Image::uploadRepeatableFiles, used by image fields through withFiles(), accept any data URI beginning with data:image without validating the declared MIME subtype or decoded bytes, while src/app/Library/Uploaders/Support/FileNameGenerator.php method FileNameGenerator::getExtensionFromFile applies mime_content_type() to the data URI instead of the decoded content. An authenticated administrator can therefore store arbitrary file content under an extensionless filename on the configured disk, which can cause stored cross-site scripting or other unintended behavior when the file is served and accessed. This issue is fixed in version 7.0.38 and 6.8.14.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • Laravel-Backpack CRUD

    From 6.0.0 · fixed in 6.8.14; From 7.0.0 · fixed in 7.0.38

  • backpack/crudPackagist

    From 6.0.0 · fixed in 6.8.14

  • backpack/crudPackagist

    From 7.0.0 · fixed in 7.0.38

References 5

GitHub · Laravel-Backpack/CRUD