Arbitrary file upload in Plank Laravel-Mediable
CVE-2026-93352
Laravel-Mediable 7.0.0 before 7.0.2 contains an incomplete patch for CVE-2026-49972 in which the .pht extension is absent from the forbidden_extensions blocklist in config/mediable.php. The blocklist introduced to address CVE-2026-49972 includes phpt but omits pht, which Apache executes as PHP via the default FilesMatch directive on Debian and Ubuntu systems. An attacker can upload a .pht file that passes all validation in MediaUploader::verifyExtension() and File::sanitizeFileName() because pht is not present in the blocklist, causing the file to be written to disk and executed as PHP when requested, enabling remote code execution with the privileges of the web server process.
Vulnerability class: Unrestricted File Upload
Published .
CVSS v3 metric
CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
EPSS exploit prediction
No EPSS score from FIRST.org yet. New CVEs usually get one within a few days; no score means no signal yet, not low risk. How EPSS works.
Affected products
Weakness classification (CWE)
References
- github.com/plank/laravel-mediable/releases/tag/7.0.2 (release-notes)
- github.com/plank/laravel-mediable/pull/396 (issue-tracking)
- github.com/plank/laravel-mediable/commit/8ddb0e5b300084e91ad2cb18a6e7bc768bb7b0… (patch)
- www.vulncheck.com/advisories/laravel-mediable-rce-via-pht-file-upload (third-party-advisory)
Frequently asked questions
- What is CVE-2026-93352?
- CVE-2026-93352 is a critical-severity vulnerability in Plank Laravel-Mediable, classified under Unrestricted Upload of File with Dangerous Type. CVSS score: 9.8/10. Published 2026-09-23.
- How severe is CVE-2026-93352?
- Critical severity. CVSS v3 base score is 9.8 out of 10.