WordPress Icegram 1.9.18 Cross Site Request Forgery
Posted on 20 July 2016
------------------------------------------------------------------------ Cross-Site Request Forgery in Icegram WordPress Plugin ------------------------------------------------------------------------ Yorick Koster, July 2016 ------------------------------------------------------------------------ Abstract ------------------------------------------------------------------------ A Cross-Site Request Forgery vulnerability was found in the Icegram WordPress Plugin. This issue allows an attacker to overwrite any WordPress option with the value true. An attacker may use this issue to enable (vulnerable) WordPress features that are disabled in the target site. ------------------------------------------------------------------------ OVE ID ------------------------------------------------------------------------ OVE-20160712-0032 ------------------------------------------------------------------------ Tested versions ------------------------------------------------------------------------ This issue was successfully tested on the Icegram - Popups, Optins, CTAs & lot more... WordPress Plugin version 1.9.18. ------------------------------------------------------------------------ Fix ------------------------------------------------------------------------ This issue is resolved in Icegram 1.9.19. ------------------------------------------------------------------------ Details ------------------------------------------------------------------------ https://sumofpwn.nl/advisory/2016/cross_site_request_forgery_in_icegram_wordpress_plugin.html The vulnerability exists in the file icegram.php. As can be seen in the code fragment below, the plugin reads the value of the option_name URL parameter and uses this value as a key to update_option(). This allows an attacker to create an link that will overwrite an arbitrary WordPress option. The value of target option will be set to true. update_option($_GET['option_name'], true); In order to exploit this issue, the attacker has to lure/force a logged on WordPress Administrator into opening a malicious link. If a logged in Administrator opens the following URL, the ability for users to register will be enabled: http://<target>/wp-admin/edit.php?dismiss_admin_notice=1&option_name=users_can_register ------------------------------------------------------------------------ Summer of Pwnage (https://sumofpwn.nl) is a Dutch community project. Its goal is to contribute to the security of popular, widely used OSS projects in a fun and educational way.