Сканирование сети и поиск уязвимостей, страница 11

 

Подозрение на уязвимость

Множественные уязвимости (MySQL)

Описание

Краткое описание Многочисленные уязвимости в механизме создания пользовательских функций СУБД MySQL, приводящие к выполнению произвольного кода на узле - объекте атаки. Подробное описание СУБД MySQL предоставляет возможность использования так называемых пользовательских функций (User-defined functions), для создания которых используется оператор CREATE FUNCTION. Его формат следующий: CREATE FUNCTION function_name RETURNS type SONAME "library_name". Ошибка, приводящая к созданию ситуации переполнения буфера, содержится в функции init_syms(), участвующей в обработке аргументов этого оператора. Сформированный пользователем аргумент (function_name) подаётся на вход этой функции и копируется в буфер, расположенный в стеке. Из-за недостаточной проверки аргумента возможно затирание адреса возврата из функции, изменение хода выполения программы и, как следствие, выведение службы MySQL из строя или запуск произвольного кода. Если СУБД MySQL используется на платформе Windows, подобные ошибки имеются и в некоторых других функциях, например, jpeg_cmp() и jpeg_decmp(). Уязвимые версии MySQL до версии 4.0.25 MySQL до версии 4.1.13 MySQL до версии 5.0.7-beta Использование уязвимости Уязвимость может быть использована удалённо путём передачи в операторе CREATE FUNCTION специальным образом подобранного аргумента function_name. Для использования уязвимости необходимо иметь возможность создания пользовательских функций на сервере БД, а это, в свою очередь, требует наличия привилегий для добавления строк (выполнения оператора insert) в таблицу mysql.func. Кроме того, если СУБД MySQL используется для работы какого-либо приложения, например, Web-приложения, для использования уязвимости можно прибегнуть к механизму SQL инъекций. Если СУБД MySQL функционирует на Windows-платформе, имеется большее число способов использования уязвимости из-за большего числа уязвимых функциий. Использование уязвимости удаленно: да Использование уязвимости локально: да Ложные срабатывания (False Positives) Вывод о наличии уязвимости сделан на основе версии по результатам идентификации сервисов и приложений на сканируемом узле. Если при установке обновления номер версии не менялся, возможно ложное обнаружение уязвимости. Пропуск уязвимости (False Negatives) Случаев пропуска уязвимости зарегистрировано не было. Причины возможных пропусков неизвестны.

Решение

Для устранения уязвимости необходимо установить последнюю версию СУБД MySQL, соответствующую используемой платформе. Необходимую информацию можно получить по адресу: http://www.mysql.com/downloads/index.html. В качестве временного решения можно ограничить доступ к механизму создания пользовательских функций.

Ссылки

CVE (CAN-2005-2573): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-2573 CVE (CAN-2005-2572): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-2572 CVE (CAN-2005-2558): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-2558 Bugtraq (Bid 14509): http://www.securityfocus.com/bid/14509 Securitylab: http://www.securitylab.ru/56434.html http://www.appsecinc.com/resources/alerts/mysql/2005-001.html http://www.appsecinc.com/resources/alerts/mysql/2005-002.html http://www.appsecinc.com/resources/alerts/mysql/2005-003.html http://www.mysql.com/downloads/index.html

 

Подозрение на уязвимость

Множественные уязвимости (MySQL)

Описание

Обнаружены уязвимости позволяющие локальному пользователю повысить свои привилегии в базе данных, а удаленному авторизованному пользователю выполнить произвольный код с привилегиями mysqld процесса. 1. Уязвимость существует при использовании временных файлов в функции CREATE TEMPORARY TABLE. Локальный пользователь может создать символическую ссылку с другого файла базы данных на временный файл. Подключиться к MySQL с помощью клиента и создать временную таблицу, которая будет использовать символическую ссылку вместо обычного временного файла. Таким образом, локальный пользователь может повысить свои привилегии в пределах базы данных. 2. Уязвимость существует в функции udf_init() файла 'sql_udf.cc' из-за некорректной обработки имен директорий. Авторизованный пользователь с привилегиями INSERT и DELETE в административной базе данных 'mysql' может вставить специально сформированное значение в поле dl таблицы mysql.func и указать расположение специально сформированной библиотеки, которая затем будет выполнена базой данных. 3. Уязвимость существует при использовании команды CREATE FUNCTION. Авторизованный пользователь с привилегиями INSERT и DELETE в административной базе данных 'mysql' может использовать команду CREATE FUNCTION в некоторых libc функциях (strcat, on_exit, exit и т.д.) чтобы выполнить произвольный код на системе с привилегиями mysqld процесса. Уязвимые версии: MySQL 4.0.23 и предыдущие MySQL 4.1.10 и предыдущие

Решение

Обновить до последней версии: http://www.mysql.com/downloads/index.html

Ссылки

CVE (CAN-2005-0709): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-0709 CVE (CAN-2005-0710): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-0710 CVE (CAN-2005-0711): http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-0711 http://www.securitylab.ru/53244.html