Категории: Статьи, Взлом, Уязвимости
1.0 Mysql charset Truncation vulnerability
Помните багу MySQL and SQL Column Truncation Vulnerabilities?
Так вот, это не единственная уязвимость такого рода в MySQL. Существует также уязвимость, которая проявляется в данной СУБД при обработке utf-8 и некоторых других символов.
Изучаем и тестим следующие запросы
Код:
Далее смотрим, что записалось в таблицу truncated_test
Код:
Как видите, у нас появился новый пользователь "admin" (а вовсе никакой не "adminБ") с паролем "new_pass2" ;-)
2.0 MySQL and Unicode hints
На очереди очередная бага от .mario - известного багоискателя форума sla.ckers.org.
Во-первых, пруфлинк.
Во-вторых, о сути самой баги расскажет следующий код.
Код:
После выполнения последнего запроса, как это ни странно, из базы извлекается просто пользователь "admin" ;)
Использовать данный баг можно, например, в следующем случае:
Код:
и далее
Код:
То есть, проверка на существующий логин должна осуществляться не путем запроса к базе, а путем проверки, встроенной в сам скрипт.
3.0 Манипуляции с расширением файла в Windows
Лучше всего о сути этой баги расскажет небольшой тест.
Итак, создаем в одном каталоге файлы 1.php и test.php.
В последний пихаем следующий код:
Код:
Запускаем и видим результат > < p P.
Как видно, file_get_contents() прочитает файл 1.php, даже если в скрипте его обозвать как 1.phP, 1.ph>, 1.ph<.
ЗЫ. Оригинальные исследования этих и других багофич ищи у китайцев (и на китайском, соответственно :) тут.
Комментарии
Подписаться на комментарии
Комментарии: 3
Просмотры: 2506
В продолжение темы могу посоветовать свою статью про Unicode, вышла в 5 номере журнала Xakep. Чуть подробней: http://www.0x416d73.name/articles/40.
журнал пока не приходил :(
вот эту багу ты описывал там, кстати?
Крайне интересным показался баг с utf8_decode(), сейчас активно ищу движок ради PoC.