• Software Link:
• Affected Versions:
Version 3.0.2 and earlier 3.0.x versions.
Version 2.5.8 and earlier 2.5.x versions.
• Vulnerability Description:
The vulnerable code is located in /plugins/system/highlight/highlight.php:
// Get the terms to highlight from the request. $terms = $input->request->get('highlight', null, 'base64'); $terms = $terms ? unserialize(base64_decode($terms)) : null;
User input passed through the “highlight” parameter is not properly sanitized before being used
in an unserialize() call at line 58. This can be exploited to inject arbitrary PHP objects into the
application scope. Successful exploitation of this vulnerability doesn’t require authentication,
but requires the “System Highlight” plugin to be enabled (such as by default configuration).
Upgrade to version 3.0.3 or 2.5.9.
• Disclosure Timeline:
[31/10/2012] – Vendor notified
[08/11/2012] – Vendor asked for a proof of concept
[08/11/2012] – Proof of concept provided to the vendor
[04/02/2013] – Vendor update released
[27/02/2013] – Public disclosure
• CVE Reference:
Vulnerability discovered by Egidio Romano.