![]() |
Работа С СУБД Через Иньекцию Запроса
Работа С СУБД Через Иньекцию Запроса. Сегодня я хочу поговорить о совешенствовании sql иньекций. В статье не будет новых способов применения sql иньекций а будут показаныы некоторые примеры запросов к базе данных которые можно применять в иньекциях. Часть 1 Дамп базы(на примере MSSQL). Начнем с того что некоторые часто упускают с поиска баз используя только поиск таблиц. Как правило администраторы создают 1 юзера на 1 или несколько баз. Для того что бы посмотреть текущие базы обратимся к такой табличке master это системная таблица и присутсвует во всех версиях mssql. Рассмотрим запрос: Цитата:
Цитата:
Цитата:
Используем Аналог лимита. Цитата:
Цитата:
Далее Есть банальный вариант но это если только есть колонка id пронумерованная по порядку. Цитата:
Начнем с банального иногда !"№;%:?*()_= символы в запросе могут шифроваться. Могут появиться ошибки поэтому данные символы стоит преобпразовывать в 16 код и посылать в так называемое url кодировке. Далее символ ' могут быть заменены на () или []. Данной фильтрацией можно обходить пробелы используя непрерывнй подзапрос. Данный вид обхода фильтра исползуеться при фильтрации кавычек какаих либо функциях например xp_cmdshell Цитата:
Фильтрацию пробелов можно обойти примерно так. Цитата:
Статья написанна только для ознакомления с языком запросов SQL. Материалы приведенные выше будут актуальны на большинстве современных субд, учитывая их архитектуру. |
Понравился аналог лимита, не знал про конструкцию top ... start at .., а так же обход ковычек.
Что касается статьи, то имхо мало, 2 часть только про хекс и ковычки - все. Вся статья про MSSQL, название не соответствует содержанию в полном объеме. Мне кажется надо либо добавить в старую статью про "Проведение инъекций в MSSQL", либо надо расписывать и про другие СУБД и методы. ЗЫ Объективный взгляд, конструктивное предложение, ничего личного ;) |
Цитата:
Я не писал про определенную СУБД я писал про SQL как язык.Методы описанные будут работать на oracle mysql mssql pgsql sybase |
Собствено здесь понимать нечего - использование top... в MSSQL, аналог лимита мускула и rownum в оракл + обход ковычек c пом. непррерывного () или [] + хекс, вот и все в одну строчку.
По сути дамп базы есть в любом посте в разделе sql инъекции, во фразе "далее юзаем лимит". Цитата:
Так же в мускуле и постгре нет возможности добавить пользователя через инъекцию. Так что не надо обобщать... ЗЫ Я просто предположил, это чисто мое имхо ;) Дело твое, хотел как лучше. |
Да причем тут базы данных и вообще понимаешь что SQL это язык причем тут базы данных.
Статья написанна по SQL:2003 (Стандарт ANSI) и SQL Server 2005 (Yukon) и PL/SQL (Procedural Language / Structured Query Language). Последнии 2 очень похожи, И большинство фишек работают на всех Язык независимо от базы данных, Другое дело что определенные базы данных работают на своих Стандартах, Можно встретить очень много модификаций и даже самопальных языков и баз. К чему твои коментарии я не пойму чего ты хочешь. Цитата:
|
Цитата:
ЗЫ кстати у тя случайно нет самого документа (SQL2003 ANSI) , а то нашел тока БНФ грамматику под стандарт. |
| Время: 15:42 |