PDA

Просмотр полной версии : SQL иньекция, фильтруемый знак в схеме


frenzzy.ekb
14.06.2013, 21:58
Всем добрый вечер. Хочу задать вопрос, самому разобрать никак не выходит.

Итак, имеет место рабочая инъекция, вызванная отсутствием фильтрации параметров (в параметр передается диапазон чисел через тире, например 10-15, и они без изменений подставляются в запрос)

Вероятнее всего используется простой explode. Проблема состоит в следующем - в нужной схеме базы в названии так же присутствует "-", в следствие чего вся часть после "-" включительно отбрасывается и получить данные из этой схемы не получается (пример нужной таблицы например такой "Site-stat.users", в качестве текущей схемы стоит "Site_data"; при попытке запроса "from Site-stat.users" вываливается ошибка "Table 'Site_data.Site' doesn't exist")

Есть ли какая-нибудь возможность через стандартные функции MySQL все таки получить доступ к схеме (к примеру через HEX представление имени схемы)?

totenkopf
16.06.2013, 20:51
обращайтесь к таблице так:

`Site-stat`.users

frenzzy.ekb
17.06.2013, 00:04
totenkopf said:
обращайтесь к таблице так:
`Site-stat`.users


Explode в PHP скрипте все равно откусит нужную часть, останется только

... 'Site

Тут нужно каким-то образом подменить "-". Пока из доков создается ощущение, что проделать такое нереально

OxoTnik
18.06.2013, 01:17
дай в ЛС url, попробую разобратся

frenzzy.ekb
18.06.2013, 21:59
OxoTnik said:
дай в ЛС url, попробую разобратся


отправил, вопрос все еще актуален)

Ereee
18.06.2013, 22:19
Сомневаюсь в существовании такого метода.

frenzzy.ekb
18.06.2013, 23:08
Ereee said:
Сомневаюсь в существовании такого метода.


Я тоже, но всякое бывает) За вопрос вроде бить не будут