{"id":"CVE-2026-84374","title":"Laravel Excel provides supercharged Excel exports and imports in Laravel","summary":"Laravel Excel provides supercharged Excel exports and imports in Laravel. From 3.1.8 until 3.1.70, in src/Files/Disk.php the Maatwebsite\\Excel\\Files\\Disk::copy() method resolves the caller-controlled $destination supplied through Excel::…","severity":"high","cvss":7.5,"cvssVector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","cwe":["CWE-22","CWE-73"],"vendor":"maatwebsite","product":"maatwebsite/excel","affected":["maatwebsite/excel >= 3.1.8, < 3.1.70"],"patched":["maatwebsite/excel 3.1.70"],"published":"2026-09-01","updated":"2026-09-09","sourceUpdated":"2026-09-09T21:09:13.080","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-84374","references":[{"url":"https://github.com/SpartnerNL/Laravel-Excel/commit/b5cafdfcf7ec63924e83303763be8fcae340f70b","label":"security-advisories@github.com"},{"url":"https://github.com/SpartnerNL/Laravel-Excel/releases/tag/3.1.70","label":"security-advisories@github.com"},{"url":"https://github.com/SpartnerNL/Laravel-Excel/security/advisories/GHSA-c7r6-vx3h-w5g2","label":"security-advisories@github.com"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-84374"},{"url":"https://github.com/advisories/GHSA-c7r6-vx3h-w5g2"}],"tags":["nvd","ghsa","composer"],"epss":0.00571,"epssPercentile":0.46003,"aliases":["GHSA-c7r6-vx3h-w5g2"],"ecosystem":"composer","ingestedAt":"2026-09-08T21:11:12.322Z","slug":"CVE-2026-84374","body":"## Overview\n\nLaravel Excel provides supercharged Excel exports and imports in Laravel. From 3.1.8 until 3.1.70, in src/Files/Disk.php the Maatwebsite\\Excel\\Files\\Disk::copy() method resolves the caller-controlled $destination supplied through Excel::store(), $export->store(), or storeExcel() against the process working directory with realpath() instead of the configured filesystem disk. If the path names an existing writable file, Disk::copy() opens it with fopen() in rb+ mode and uses stream_copy_to_stream(), bypassing Flysystem path confinement and allowing an attacker whose application input controls the export path to overwrite arbitrary existing files with export content. The rb+ behavior creates a non-truncating overwrite and trailing bytes when the new export is shorter, and overwriting an executable PHP file can lead to remote code execution. This issue is fixed in version 3.1.70.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Package advisory (CVE-2026-84374)\n\nAffected packages:\n\n- `maatwebsite/excel >= 3.1.8, < 3.1.70`\n\nPatched in:\n\n- `maatwebsite/excel 3.1.70`\n\nSource: https://github.com/advisories/GHSA-c7r6-vx3h-w5g2","depth":"twilight","depthScore":41,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}