Спасибо. Про слепые инъекции не знал, весьма любопытная штука оказывается!
Поскольку никаких данных, кроме злосчастной ошибки о неверном ключе сессии, скрипт не выводит - пришлось в качестве критерия угадывания использовать HTTP ошибку 504.
Постепенно по одной цифре узнал версию базы данных:
MySQL 5.6.21
Использовал такие запросы:
Код:
uid=99 or substring(@@version,1,1)=1
uid=99 or substring(@@version,1,1)=2
uid=99 or substring(@@version,1,1)=3
uid=99 or substring(@@version,1,1)=4
...
До тех пор пока не получал ошибку 504, говорящую что цифра была угадана.
После чего переходил к следующей цифре.
Самое интересное, что после каждого такого угадывания сервер переставал отвечать на мои запросы на 10 минут, даже самые безобидные. Через 10 мин все возвращалось на круги своя. Причину такого поведения не понимаю. С одной стороны запрос возвращает 13 миллионов строк, это серьезная нагрузка на сервер. Но с другой сам по себе сервер не уходил в даун. Я проверял это входя в игру обычным способом, через клиент.
Что ж, еще раз спасибо. Ссылка тоже полезная, я пока прочитал не все, так что когда закончу - отпишусь о результатах.