Lucene search
K

EmpireCMS 6.6 PHP Code Execution

🗓️ 06 Nov 2012 00:00:00Reported by flyh4tType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 48 Views

EmpireCMS 6.6 PHP Code Execution Vulnerability Disclosur

Related
Code
ReporterTitlePublishedViews
Family
0day.today
EmpireCMS 6.6 PHP Code Execution Vulnerability
6 Nov 201200:00
zdt
CVE
CVE-2012-5777
16 Nov 201200:00
cve
Cvelist
CVE-2012-5777
16 Nov 201200:00
cvelist
EUVD
EUVD-2012-5660
7 Oct 202500:30
euvd
NVD
CVE-2012-5777
16 Nov 201200:55
nvd
Prion
Sql injection
16 Nov 201200:55
prion
securityvulns
[CVE-2012-5777]EmpireCMS Template Parser Remote PHP Code Execution Vulnerability
6 Nov 201200:00
securityvulns
securityvulns
Web applications security vulnerabilities summary (PHP, ASP, JSP, CGI, Perl)
6 Nov 201200:00
securityvulns
`  
  
# Exploit Title: EmpireCMS Template Parser Remote PHP Code Execution Vulnerability  
# Date: 2012-11-1  
# Author: flyh4t  
# Software Link: http://www.phome.net  
# Version: EmpireCMS 6.6   
# CVE :   
  
  
EmpireCMS Template Parser Remote PHP Code Execution Vulnerability  
---------------------------------  
By fly  
Mail:[email protected]  
Site:bbs.wolvez.org  
---------------------------------  
  
Empire CMS is a widely used CMS in china. Official website is www.phome.net.  
I have found a remote PHP code-execution vulnerability in EmpireCMS 6.6 (the lastest version).  
This issue occurs in the application's template parser.  
An  
attacker can exploit this issue by enticing an unsuspecting victim to   
install a malicious template,can inject and execute arbitrary malicious   
PHP code in the context of the webserver process.   
This may facilitate a compromise of the application and the underlying system; other attacks are also possible.  
  
[-] details :  
  
Here is a function for template parser in /e/class/connect.php  
---------------------------------  
function ReplaceListVars($no,$listtemp,$subnews,$subtitle,$formatdate,$url,$haveclass=0,$r,$field,$docode=0){  
global $empire,$public_r,$class_r,$class_zr,$fun_r,$dbtbpre,$emod_r,$class_tr,$level_r,$navclassid,$etable_r;  
if($haveclass)  
{  
$add=sys_ReturnBqClassname($r,$haveclass);  
}  
if(empty($r[oldtitle]))  
{  
$r[oldtitle]=$r[title];  
}  
if($docode==1)  
{   
//here is the vul code  
//$listtemp is passed to function eval and not checked.   
$listtemp=stripSlashes($listtemp);  
eval($listtemp);  
}  
  
......  
}  
---------------------------------  
  
Many other files used this function,here is one place:  
  
---------------------------------  
// /e/action/ListInfo/index.php line 120  
  
//get template from datebase which may contain PHP code we have injected into database.  
  
$tempr=$empire->fetch1("select  
tempid,temptext,subnews,listvar,rownum,showdate,modid,subtitle,docode   
from ".GetTemptb("enewslisttemp")." where tempid='$tempid'");  
  
......  
  
  
$listtemp=$tempr[temptext];  
$rownum=$tempr[rownum];  
if(empty($rownum))  
{$rownum=1;}  
$formatdate=$tempr[showdate];  
$subnews=$tempr[subnews];  
$subtitle=$tempr[subtitle];  
$docode=$tempr[docode];  
$modid=$tempr[modid];  
$listvar=str_replace('[!--news.url--]',$public_r[newsurl],$tempr[listvar]);  
// $listvar contain PHP code we have injected  
  
......  
  
while($r=$empire->fetch($sql))  
{  
$repvar=ReplaceListVars($no,$listvar,$subnews,$subtitle,$formatdate,$url,$have_class,$r,$ret_r,$docode);  
//here lead to execute php code  
  
------------------------------  
  
  
[-] Disclosure timeline:  
  
[19/10/2012] - Vulnerability discovered  
[20/10/2012] - Vendor notified,No responsed  
[01/11/2012] - CVE number requested  
[02/11/2012] - Assigned CVE-2012-5777  
[05/11/2012] - Public disclosure  
  
`

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