
18.11.2012, 21:45
|
|
Guest
Сообщений: n/a
Провел на форуме: 2564
Репутация:
0
|
|
дядьки, подскажите как в MS-SQL делать запросы БЕЗ ПРОБЕЛОВ
уж очень не хочется заморачиваться с устанавливкой и освоением MS-SQL
я так понимаю, что в MS-SQL при нормальном (НЕ-инъекции) использовании запрос
select(varXXXX)from(tblXXX)
не будет работает ?
у меня, например , SQL-инъекция с вышеупомянутым запросом "валится" с ошибкой 500 (отчёт об ошибках отключен, подробности не узнать...)
НО , например, запрос
select(@@version))
или
(db_name())
успешно "вытягивает" инфу из базы
Всё , что я научился сейчас "вытягивать" с базы , - это получение информации из встроенных функций Transact-SQL, описанных здесьhttp://msdn.microsoft.com/ru-ru/library/ms174318.aspx
например
(current_user)
(user)
(system_user)
(original_login())
и т.д.
но этого ,естесственно, мало
что вообще максимум можно поиметь, если sql-инъекция в MS-SQL возможна, но ТОЛЬКО БЕЗ ПРОБЕЛОВ ???
P.S.
пробелы скриптом ТОЧНО режутся
запрос вида
(select('qwe rty'))
успешно вернул мне
qwe%20rty
просто браузер каждый пробел в GET-запросе преобразует в %20 ,
и SQL-запрос с этими %20 прямо в таком виде и ПЫТАЕТСЯ выполниться, естесственно, с ошибкой ( http 500 )
P.P.S.
http://msdn.microsoft.com/ru-ru/library/ms178623(v=sql.100).aspx
использование комментариев вида /**/ вместо пробела в моем случае исключено
т.к. get-параметры передаются через косую черту, т.е. вот так
http://hostname/path/param1/param2/param3/param4/param5/
и использование комментариев вида /**/ приводит к ошибке
|
|
|
|