Показать сообщение отдельно

  #8  
Старый 29.12.2010, 08:00
zuzzz
Новичок
Регистрация: 03.07.2009
Сообщений: 11
С нами: 8872099

Репутация: 0
По умолчанию

Привет.

Нашел sql инъекцию в одно игре, но справится с ней не могу. Игра не интересная, а вот как выполнить инъекцию стало интересно. Подскажите.

Вобщем так. По всей видимости выполняются последовательно два таких вот запроса

SELECT field1%%, field2%% from table1 where user=123 limit 1

UPDATE table1 set field1%% = ?, field2%% = 0 where user=123 limit 1

где

%% любое значение которое можно передать запросом, оно ни как не фильтруется. Значение подставляется одно и тоже во всех 4х местах

? тут должно быть какое то значение, но его нет, т.е пусто. Видимо значение высчитывается после 1 sql запроса. Или есть еще другие sql заросы.

значения в полях field числовые

Если будет ошибка в 1м sql запросе, до второго не доходит.

Без ошибок работает только когда %% равно от 1 до 5. Но сообщает типа, что у нас там чего то не хватает для выполнения действия (игровой момент).

Задача выполнить update для одного пользователя 123 и изменить значения в полях field11 (field12 ...)
 
Ответить с цитированием