
10.03.2015, 23:23
|
|
Новичок
Регистрация: 21.06.2005
Сообщений: 1
С нами:
10992741
Репутация:
0
|
|
Сообщение от scr1m77
Есть blind sql injection, как правильно узнать длинну получаймой колонки. Использую такой запрос:
Код:
SELECT IF (SUBSTRING(LENGTH(login),{x},1) = {y}, SLEEP(5), 0) FROM users LIMIT 1
где {y} перебираймые значения "0,1,2,3,4,5,6,7,8,9"
Проблема в том, что substring возвращает "0", когда положение {x} вышло за длинну записи. В итоге получается, что при попытке получить второе значение (x=2), а истинная длинна = 5, то получаем, что длинна колонки = 50.
Собственно задача - правильно узнать длинну содержимого колонки, без лишних запросов.
может вместо login пехать что-нить такое: select column_name from information_schema.tables where table_name='users'
|
|
|