Для решения проблем с кодировкой есть
несколько вариантов. К примеру:
http://site.com/script.php?id=-1'+union+select+1,unhex(hex(version())),3--+
либо
http://site.com/script.php?id=-1'+union+select+1,AES_DECRYPT(AES_ENCRYPT(version(),'lol'),'lol'),3--+
В первом примере мы сначала приводим результат функции
version() к 16-ричному виду, далее снова в строчный вид. Второй
способ аналогичен. Хочу отметить еще одну полезную сторону
данного метода.
К примеру, у нас есть sql-injection, одно из полей которой
используется в инклуде (include ($_row['file'].'html');). Нам
нужно обрезать расширение файла, однако директива magic_qoutes
находится в положении ON, т.е. финт с нулл-байтом (%00) уже не
пройдет. Тут-то к нам и придут на помощь уже знакомые функции.
http://site.com/script.php?id=-1'+union+select+1,0x...00,3--+
Вместо «...», естественно, будет файл, который должен, по
твоему мнению, участвовать в инклуде, а в конце вставим
нулл-байт в 16-ричном представлении, и он уже не будет попадать
под фильтрацию magic_quotes.