После полутора лет разработки и пяти предварительных выпусков сформирован первый стабильный релиз новой ветки СУБД MariaDB 10.2, в рамках которой развивается ответвление от MySQL, сохраняющее обратную совместимость и отличающееся интеграцией дополнительных движков хранения и расширенных возможностей. Развитие MariaDB курирует независимая организация MariaDB Foundation в соответствии с полностью открытым и прозрачным процессом разработки, не зависящим от отдельных вендоров. MariaDB поставляется вместо MySQL во многих дистрибутивах Linux (RHEL 7, SUSE 12, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian 9) и внедрён в таких крупных проектах, как Wikipedia, Google Cloud SQL и Nimbuzz. Ключевые улучшения MariaDB 10.2: Добавлена экспериментальная поддержка движка хранения MyRocks, разработанного Facebook на базе системы хранения RocksDB, оптимизированной для Flash-накопителей. В хранилище MyRocks применяются страницы данных плавающего размера, позволяющие избежать выравнивания по
Во входящей в состав MySQL утилите mysqldump, используемой для создания резервных копий, выявлена уязвимость (CVE-2016-5483), позволяющая организовать выполнение произвольных shell-команд или привилегированных конструкций SQL во время восстановления резервной копии при помощи утилиты mysql. Код выполнятся с правами администратора, запустившего mysql. Атаку может совершить пользователь СУБД, имеющий права на создание таблиц, например после успешной атаки по подставновке SQL-кода через уязвимое web-приложение. Проблема вызвана особенностью добавления комментариев с названиями таблиц в выводе mysqldump. Атакующий имеет возможность создать таблицу с переводом строки в имени, что приведёт к тому, что в область комментария попадёт только начало имени, а хвост будет перенесён на другую строку и выполнен при загрузке дампа. Например, атакующий может создать таблицу с именем, разнесённым на три строки: CREATE TABLE `evil \! id select user(),@@version/*` (test text); При создании резервной копии в
Давид Голански (Dawid Golunski) продолжил публикацию исследований безопасности MySQL. В сентябре им были опубликованы сведения об уязвимости в сервере MySQL, позволяющей повысить свои привилегии до пользователя root. Техника атаки была ограничена пользователями с правами FILE, но было сказано, что имеется метод обхода данного ограничения и атака может быть совершена любым непривилегированным пользователем СУБД. Спустя месяц Давид раскрыл информацию о новой уязвимости (CVE-2016-6663), позволяющей обойти систему ограничения привилегий MySQL. Уязвимость затрагивает MySQL и производные продукты, такие как MariaDB и Percona Server, и позволяет локальному пользователю СУБД с типовыми правами на выполнение операций CREATE, INSERT и SELECT получить полномочия администратора СУБД (обычно пользователь mysql) и возможность записи и чтения любых файлов MySQL, в том числе конфигурационных файлов и БД других пользователей. В сочетании с ранее обнародованной уязвимостью CVE-2016-6662, новая проблема упрощает проведение
Компания Oracle представила плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В октябрьском обновлении в сумме устранено 253 уязвимости. В выпусках Java SE 8u111 и 8u112 устранено 7 проблем с безопасностью, которые могут быть эксплуатированы удалённо без проведения аутентификации. Трём уязвимостям присвоен критический уровень опасности (CVSS Score больше 9). Все проблемы проявляются только на клиентских системах (запуск в браузере Java Web Start и Java-апплеты). Выпуск Java SE 8u112 вышел одновременно с 8u111 и отличается не только устранением уязвимостей, но и исправлением ошибок, не связанных с безопасностью. Из грядущих изменений отмечается прекращение поддержки MD5 для формирования цифровых подписей для JAR-файлов, начиная с января 2017 года все JAR-файлы с MD5 будут считаться неподписанными. Кроме проблем в Java SE, наличие уязвимостей обнародовано и в других продуктах Oracle, в том числе: 32 уязвимости в MySQL
В находящейся в разработке ветке CУБД MySQL 8.0 (версия 8.0 будет выпущена следом за 5.7, вместо 5.8) представлены изменения, ограничивающие использование хранилища MyISAM. Поддержка MyISAM пока сохраняется, но использование данного хранилища в самом MySQL практически прекращено. В частности, после реализации в MySQL 8.0 нового механизма хранения системных данных, таблицы MyISAM больше не используются для хранения системной схемы (БД mysql) и теперь невозможно просто скопировать таблицы MyISAM на работающий сервер MySQL (скопированные таблицы не будут определены, в отличие от таблиц InnoDB, для которых можно выполнить "ALTER TABLE … IMPORT TABLESPACE"). Возможность создания таблиц с опцией "engine=MyISAM" сохранена. Ранее хранилище MyISAM предоставляло поддержку ряда возможностей, отсутствующих в InnoDB, но в ветках MySQL 5.6 и 5.7 функциональность была выровнена и в InnoDB появились такие функции как полнотекстовые индексы, табличные пространства, пространственные индексы (RTREE), отслеживание
Опубликованы сведения о критической уязвимости (CVE-2016-6662) в MySQL и производных продуктах, таких как MariaDB и Percona Server. Уязвимость позволяет локально или удалённо атаковать сервер MySQL и повысить свои привилегии до пользователя root. Смягчает опасность то, что для эксплуатации требуется аутентифицированный доступ к БД или проведение дополнительной атаки на web-приложения, в результате которой необходимо получить возможность подстановки SQL-кода. Усугубляет проблему то, что опубликован начальный прототип эксплоита (полный эксплоит планируется опубликовать позднее, дав время на выпуск обновления), в то время как сама уязвимость ещё не исправлена (0-day) и проявляется в актуальных выпусках поддерживаемых веток MySQL - 5.7.15, 5.6.33 и 5.5.52. По сведению разработчиков SUSE проблема уже исправлена в MySQL 5.5.52 и MariaDB 10.0.27. Обновления пакетов в дистрибутивах пока не выпущены (Ubuntu, Debian, RHEL, FreeBSD, CentOS, Fedora, SUSE). Применяемые по умолчанию правила SELinux и AppArmor не влияют
Facebook представил проект MyRocks, в рамках которого развивается новый движок хранения для СУБД MySQL 5.6, основанный на системе хранения RocksDB, оптимизированной для Flash-накопителей. Главными целями создания MyRocks является повышение эффективности хранения данных на Flash-накопителях и сокращение размера БД. В качестве основных причин большого потребления дискового пространства в InnoDB отмечается фрагментация, низкая степень сжатия и выравнивание сжатых данных внутри хранилища по страницам фиксированного размера (размер страницы 8 Кб и даже если данные упакованы в 5 Кб всё равно будет израсходован блок в 8 Кб). Хранилище MyRocks лишено данных недостатков, так как применяет размер страницы плавающего размера и предоставляет значительно более эффективный метод сжатия. MyRocks также выполняет меньше операций последовательного чтения/записи за счёт использования модели хранения данных в форме лога (Log Structured Merge Trees), допускающей только дополнение (чистка производится сборщиком мусора). При
7 июля 2016 года (четверг) в 16:00 в Санкт-Петербурге пройдёт встреча с Петром Зайцевым, экспертом по созданию высокопроизводительных систем на базе MySQL. Пётр является бывшим техническим директором сервиса web-статистики SpyLOG и главой группы оптимизации производительности в компании MySQL AB, с 2006 года руководит собственной компанией Percona, развивающей свободный расширенный вариант MySQL. На мероприятии Пётр выступит с презентацией о техническом устройстве современных open source решений для СУБД, а также ответит на вопросы аудитории. Встреча пройдёт в конференц-зале Научно-исследовательского корпуса СПбПУ (Политехническая ул, 29 корпус 11). Мероприятие бесплатное, но требуется предварительная регистрация.
Компания Oracle опубликовала выпуск СУБД MySQL Community Server 5.7.13, в котором продолжено продвижение реализованной в прошлой версии системы Rapid Plugins, плагина X Plugin и нового типа схем объектов БД - "коллекции документов". Основные изменения: Увеличен размер некоторых полей в системных таблицах: с 77 до 93 символов увеличено поле definer в таблицах event и proc, столбец DEFINER в таблицах INFORMATION_SCHEMA EVENTS, ROUTINES, TRIGGERS и VIEWS, а также поле grantor в таблицах rocs_priv и tables_priv, которые приведены в соответствие с ранее увеличенной длиной имени пользователя (c 16 до 32 символов). Для преобразования старых таблиц при обновлении требуется запуск mysql_upgrade; В плагин audit_log добавлена поддержка выборочной фильтрации событий аудита, что позволяет сократить объём записей, попадающих в лог; На платформах с systemd обеспечена поддержка управления несколькими экземплярами MySQL без применения mysqld_multi и mysqld_multi.server; Добавлен SQL-интерфейс для управления ключами
Летняя встреча московской группы пользователей MySQL (Moscow MySQL User Group) состоится в Сколково 17 июня после 17:00. Докладчик встречи - Света (svetasmirnova) Смирнова из компании Percona, инженер технической поддержки MySQL с более чем восьмилетним стажем, автор книги "MySQL Troubleshooting". Тема блиц-доклада (lightning talk): "Жизнь, удивительные приключения и смерть бага MySQL", в котором будут показаны все стадии жизненного цикла сообщения об ошибке с момента открытия до исправления. Заявки на блиц-доклады (5-15 минут) могут быть приняты и рассмотрены организаторами до 1 июня.