Laravel-Mediable < 7.0.0 Path Traversal via File::sanitizePath()
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
Laravel-Mediable before 7.0.0 contains a path traversal vulnerability in the File::sanitizePath() function that allows attackers to write uploaded files to arbitrary locations by controlling the directory argument passed to MediaUploader::toDestination(). Attackers can exploit the permissive character-class regex that allows both dot and slash characters combined with an ineffective trailing trim() call to bypass sanitization and upload files to sensitive locations such as the document root, environment configuration files, or application configuration directories, enabling remote code execution.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| plank | laravel-mediable | before 7.0.0 | 7.0.0 | Patch available | CNA |
| — | plank/laravel-mediable (Packagist) | before 7.0.0 | 7.0.0 | Patch available | GHSA-xv8g-76mx-2rxc |
- laravel-mediable Vendorplank Affected before 7.0.0 Fixed in 7.0.0 Patch available CNA
- plank/laravel-mediable (Packagist) Vendor— Affected before 7.0.0 Fixed in 7.0.0 Patch available GHSA-xv8g-76mx-2rxc
Remediation
- Fix · CNA laravel-mediable (plank) Fixed in 7.0.0
- Fix · GHSA-xv8g-76mx-2rxc plank/laravel-mediable (Packagist) Fixed in 7.0.0 Advisory →
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
plank laravel-mediable 7.0.0
4 records Highest priority Priority MEDIUM 1 MEDIUM, 3 LOW
Other records, highest priority first
- TI-2026-36806 Laravel-Mediable < 7.0.0 File Upload RCE via Extension BypassPriority LOW 38
- TI-2026-36805 Laravel-Mediable < 7.0.0 Stored XSS via SVG File UploadPriority LOW 24
- TI-2026-36803 Laravel-Mediable < 7.0.0 SSRF via RemoteUrlAdapter URL HandlingPriority LOW 24
Timeline
- 2026-10-02 Threatist record created from CVE-2026-49970
- 2026-10-03 Alias added: GHSA-xv8g-76mx-2rxc
References
More plank vulnerabilities
- TI-2026-62940 Laravel-Mediable 7.0.0 < 7.0.2 RCE via .pht File Upload CVSS 4.0CRITICAL 9.3
- TI-2026-04194 Unsafe Client MIME Type Handling Can Enable Arbitrary File Upload in plank/laravel-mediable CVSS 4.0CRITICAL 9.3
- TI-2026-36806 Laravel-Mediable < 7.0.0 File Upload RCE via Extension Bypass CVSS 4.0HIGH 7.7
- TI-2026-36805 Laravel-Mediable < 7.0.0 Stored XSS via SVG File Upload CVSS 4.0MEDIUM 5.3
- TI-2026-36803 Laravel-Mediable < 7.0.0 SSRF via RemoteUrlAdapter URL Handling CVSS 4.0MEDIUM 5.3
Sources
- CVE-2026-49970 · CVE Program
- CVE-2026-49970 · NVD
- FIRST EPSS
- GHSA-xv8g-76mx-2rxc · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences