############################# Exploit Title : Multiple SQL injection vulnerabilities in Cardoza Wordpress poll plugin Author:Marcela Benetrix home:www.girlinthemiddle.net Date: 01/21/13 version: 34.05 software link:http://wordpress.org/extend/plugins/cardoza-wordpress-poll/ ############################# Wordpress Poll plugin description Wordpress Poll is completely ajax powered polling system which supports both single and multiple selection of answers. It has interesting functions like statistics, user logs and the opportunity to lock the users by their ip,cookies or id. ########################## SQL injection location The problem is located in the file: CWPPoll.js, to be more specific viewPollResults and userlogs methods. Although both ajax functions are used in the administration side they can be accessed by an external script and their parameter(pollid) is not sanitised ########################## POC /wp-admin/admin-ajax.php/?poll_id=2 or 1=1&action=view_poll_result via post/ajax ############################ BONUS TRACK In the same plugin I found several functions that could have catastrophic results if they are handled by an attacker. function editAnswer(answerid, poll_id) function deleteAnswer(answerid, poll_id) function addAnswer(polls_id) function deletePoll() All of them can be acceded from an external call allowing the attacker to add,edit, delete an answer and in the worst case delete a poll. The caller is not verified. ########################### CVE identifier CVE-2013-1400 number has been assigned to all of the SQL injection issues CVE-2013-1401 for those functions which can be handled externally ########################## Vendor Notification 01/17/2013 to: the developer. He replied immediately and fixed the problem. Because of it, a new version has been released