
29.12.2010, 08:00
|
|
Новичок
Регистрация: 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 ...)
|
|
|