unisharp/laravel-filemanager · Security
Unrestricted Upload of File with Dangerous Type in unisharp/laravel-filemanager
- GHSA ID
- GHSA-f8x6-m9f5-ffp8
- CVE ID
- CVE-2021-23814
- Severity
- medium
- Published
- Updated
- CVSS
- 6.7 · CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L
- CVSS v3
- 6.7 · CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L
Description
This affects the package unisharp/laravel-filemanager prior to version 2.6.2. The upload() function does not sufficiently validate the file type when uploading.
An attacker may be able to reproduce the following steps:
- Install a package with a web Laravel application.
- Navigate to the Upload window
- Upload an image file, then capture the request
- Edit the request contents with a malicious file (webshell)
- Enter the path of file uploaded on URL
- Remote Code Execution
**Note: Prevention for bad extensions can be done by using a whitelist in the config file(lfm.php). Corresponding document can be found in the here.
CWEs
- CWE-434 · Unrestricted Upload of File with Dangerous Type
References
- https://nvd.nist.gov/vuln/detail/CVE-2021-23814 ↗
- https://snyk.io/vuln/SNYK-PHP-UNISHARPLARAVELFILEMANAGER-1567199 ↗
- https://github.com/UniSharp/laravel-filemanager/issues/1113#issuecomment-1812092975 ↗
- https://github.com/UniSharp/laravel-filemanager/commit/bd84899ce65a7f193e676dd8444e424fa50f64fa ↗
- https://github.com/UniSharp/laravel-filemanager/blob/master/src/Controllers/UploadController.php#L26 ↗
- https://github.com/UniSharp/laravel-filemanager/blob/master/src/Controllers/UploadController.php%23L26 ↗
- https://github.com/advisories/GHSA-f8x6-m9f5-ffp8 ↗