In WordPress 4.9.7, plugins uploaded via the admin area are not verified as being ZIP files. This allows for PHP files to be uploaded. Once a PHP file is uploaded, the plugin extraction fails, but the PHP file remains in a predictable wp-content/uploads location, allowing for an attacker to then execute the file. This represents a security risk in limited scenarios where an attacker (who does have the required capabilities for plugin uploads) cannot simply place arbitrary PHP code into a valid plugin ZIP file and upload that plugin, because a machine's wp-content/plugins directory permissions were set up to block all new plugins.
The product allows the upload or transfer of dangerous file types that are automatically processed within its environment.
Link | Tags |
---|---|
https://core.trac.wordpress.org/ticket/44710 | third party advisory |
https://github.com/rastating/wordpress-exploit-framework/pull/52 | third party advisory |
https://rastating.github.io/unrestricted-file-upload-via-plugin-uploader-in-wordpress/ | third party advisory |
http://www.securityfocus.com/bid/105060 | third party advisory vdb entry |