GHSA-f8x6-m9f5-ffp8
Unrestricted Upload of File with Dangerous Type in unisharp/laravel-filemanager
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| Packagist | unisharp/laravel-filemanager | < 2.6.2 | 2.6.2 |
Details
As written in the advisory (Markdown source, shown as plain text).
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](https://unisharp.github.io/laravel-filemanager/configfolder-categories).
References
External links from the advisory. They lead to third-party sites.
- https://nvd.nist.gov/vuln/detail/CVE-2021-23814
- https://github.com/UniSharp/laravel-filemanager/issues/1113#issuecomment-1812092975
- https://github.com/UniSharp/laravel-filemanager/commit/bd84899ce65a7f193e676dd8444e424fa50f64fa
- https://github.com/UniSharp/laravel-filemanager
- 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://snyk.io/vuln/SNYK-PHP-UNISHARPLARAVELFILEMANAGER-1567199