Можно ли объяснить это Внедрение SQL?

Веб-сайт я работал, был недавно предпринят, чтобы быть взломанным следующим сценарием Внедрения SQL

boys' and 3=8 union 
select 1, 
concat(0x232425,ifnull(`table_name`,0x30),char(9),ifnull(`table_rows`,0x30), char(9),0x252423),
3,4,5,6,7,8,9 

from `information_schema`.`tables` 

where table_schema=0x62646B3032 limit 44,1 -- And '8'='8

Эта инжекция возвратила mysql имя таблицы. Об этом сообщила система сообщения об ошибке на том веб-сайте, и нам удалось зафиксировать ту часть однако, я не могу понять то, что делает вышеупомянутую среднюю инжекцию?

Кто-либо может объяснить это?

Penuel

8
задан BenV 10 August 2010 в 04:01
поделиться

3 ответа

Согласно this MySQL concat ()

Возвращает строку, которая получается из объединение аргументов. Можно иметь один или несколько аргументов. Я упал аргументы - это недвоичные строки, Результат - недвоичная строка. Если аргументы включают любые двоичные строки, результат - двоичная строка. А числовой аргумент преобразуется в его эквивалентная двоичная строковая форма

Итак, 0x232425 преобразуется в # $%, который просто добавляется в начало и конец поля table_name. Может быть, просто для того, чтобы им было проще извлекать имена таблиц позже с помощью Regex.

Позже char (9) эквивалентен табуляции, как вы можете видеть здесь , и служит только для лучшего форматирования вывода.

3,4,5,6,7,8,9 просто там, так что столбцы соответствуют таблице мальчиков, на которой они выполняют Союз.

4
ответ дан 5 December 2019 в 12:54
поделиться
Эта инъекция вернула имя таблицы mysql.

Вы имеете в виду, что ваш веб-сайт отображал имя таблицы, когда вы вводили этот ввод, или что запрос возвращает его при запуске из клиента mysql? Если это было показано на вашем веб-сайте, злоумышленник имеет возможность вводить гораздо более вредоносные запросы. Проверьте свои данные.

3
ответ дан 5 December 2019 в 12:54
поделиться

Они используют выбор из представлений информационной схемы на сервере mysql:

http://dev.mysql.com/doc/refman/5.0/en/information-schema.html

Они используют некоторые хитрые хаки для устранения простых методов предотвращения SQL-инъекций.

6
ответ дан 5 December 2019 в 12:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: