При проверке MySQL e-matters обнаружили несколько проблем:
- проблема знаковых/беззнаковых чисел в COM_TABLE_DUMP
-
Два размера принимались из запроса как знаковые целые числа, а затем
преобразовывались в беззнаковые без проверки на отрицательные числа.
Поскольку полученные значения использовались при вызове memcpy(), это
могло привести к повреждению содержимого памяти.
- Обработка длины пароля в COM_CHANGE_USER
-
При переаутентификации в качестве другого пользователя MySQL не
осуществляла все проверки, производимые при начальной аутентификации.
Это создавало две проблемы:
- не учитывалась возможность простого перебора односимвольных паролей
(в случае начальной регистрации исправлено в феврале 2000), что могло
быть использовано обычным пользователем для присвоения привилегий
пользователя root базы данных
- можно было переполнить буфер пароля и заставить сервер выполнить
произвольный код
- переполнение read_rows() в libmysqlclient
-
При обработке строк, возвращённых SQL-сервером, не производилась проверка
на слишком большие строки или на наличие завершающих символов NUL. Это
могло быть использовано для эксплуатации SQL-клиентов, подключённых к
злонамеренному MySQL-серверу.
- переполнение read_one_row() в libmysqlclient
-
При обработке строки, возвращённой SQL-сервером, не проверялся размер
возвращённых полей. Это могло быть использовано для эксплуатации
SQL-клиентов, подключённых к злонамеренному MySQL-серверу.
В Debian GNU/Linux 3.0/woody это исправлено в версии 3.23.49-8.2,
в Debian GNU/Linux 2.2/potato — в версии 3.22.32-6.3.
Мы рекомендуем вам как можно скорее обновить пакеты mysql.