WordPress Plugin Vulnerabilities

File Manager Advanced Shortcode <= 2.3.2 - Unauthenticated Remote Code Execution through shortcode

Description

The plugin does not adequately prevent uploading files with disallowed MIME types when using the shortcode. This leads to RCE in cases where the allowed MIME type list does not include PHP files. In the worst case, this is available to unauthenticated users.

Proof of Concept

1. Add the following shortcode to a page:

[file_manager_advanced login="no" path="wp-content" hide="plugins" operations="upload,download" view="grid" theme="light" lang ="en" upload_allow="image/png" upload_max_size="2G"]

2. As an unauthenticated user, visit the page. Upload a PHP file and intercept the upload request.
3. Intercept the request and modify the POST parameter `upload_allow` to have the value `all`.
4. See that the PHP file was uploaded and can be accessed.

Affects Plugins

References

YouTube Video

Miscellaneous

Original Researcher
Mateus Machado Tesser
Submitter
Mateus Machado Tesser
Verified
Yes

Timeline

Publicly Published
2023-05-31 (about 11 months ago)
Added
2023-05-31 (about 11 months ago)
Last Updated
2023-06-07 (about 11 months ago)

Other