The OpenNET Project

 
Поиск (теги):    НОВОСТИ (+) КОНТЕНТ WIKI MAN'ы ФОРУМ twitter

12.09.2016 17:39  Критическая root-уязвимость в MySQL

Опубликованы сведения о критической уязвимости (CVE-2016-6662) в MySQL и производных продуктах, таких как MariaDB и Percona Server. Уязвимость позволяет локально или удалённо атаковать сервер MySQL и повысить свои привилегии до пользователя root.

Смягчает опасность то, что для эксплуатации требуется аутентифицированный доступ к БД или проведение дополнительной атаки на web-приложения, в результате которой необходимо получить возможность подстановки SQL-кода. Усугубляет проблему то, что опубликован начальный прототип эксплоита (полный эксплоит планируется опубликовать позднее, дав время на выпуск обновления), в то время как сама уязвимость проявляется во всех ветках MySQL. Проблема устранена в выпусках MySQL 5.7.15, 5.6.33 и 5.5.52, а также в MariaDB 10.0.27 и Percona Server 5.7.14-7. Обновления пакетов с прошлыми версиями mysql/mariadb в дистрибутивах пока не выпущены (Ubuntu, Debian, RHEL, FreeBSD, CentOS, Fedora, SUSE). Применяемые по умолчанию правила SELinux и AppArmor не влияют на результаты атаки.

Сама по себе выявленная уязвимость позволяет любому пользователю СУБД с правами на выполнение операций SELECT/FILE (без прав FILE можно обойтись, но информация об обходе будет опубликована позднее под CVE-2016-6663) получить доступ к функциям работы с логами, которые должны быть доступны только пользователю admin. Через манипуляции с функциями записи в лог атакующий может изменить или создать файл конфигурации my.cnf. Если для файла my.cnf запрещена запись от пользователя mysql, то атакующий может создать новый файл в директории с данными (/var/lib/mysql), которая по умолчанию допускает запись для пользователя mysql.

Возможность выполнения кода с правами root достигается через добавление к конфигурации конструкции, загружающей подставную библиотеку при очередном перезапуске mysql. В частности, процесс mysqld работает от непривилегированного пользователя, но при запуске используется скрипт mysqld_safe с правами root. В mysqld_safe среди прочего можно загрузить альтернативную библиотеку с реализацией функций malloc. Имя библиотеки передаётся через параметр "malloc_lib/--malloc-lib=LIB", который может быть определён в секциях '[mysqld]' и '[mysqld_safe]' файла конфигурации my.cnf. Таким образом, атакующий, имеющий возможность записи в my.cnf, может инициировать загрузку любой библиотеки с правами root.

Интересно, что атака через правку my.cnf не нова и в 2003 году уже исправлялась в выпуске 3.23.55 (эксплуатация сводилась к выполнению "SELECT * INFO OUTFILE '/var/lib/mysql/my.cnf'). Новая атака позволяет использовать функции записи в лог, например: "set global general_log_file = '/var/lib/mysql/my.cnf'; set global general_log = on; select 'malloc_lib=/var/lib/mysql/mysql_hookandroot_lib.so'; set global general_log = off;".

  1. Главная ссылка к новости (http://openwall.com/lists/oss-...)
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: mysql
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 17:54, 12/09/2016 [ответить] [смотреть все]
  • +1 +/
    ах-ах-ах ужас, ужас Мысль о touch var lib mysql my cnf chattr i var lib... весь текст скрыт [показать]
     
     
  • 2.37, Аноним, 10:24, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Я воспользовался четвертым вариантом и выкинул MySQL.
     
  • 2.76, gogo, 00:15, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Как временный вариант, до выходы полноценного патча, это в принципе должно работ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.77, gogo, 00:19, 14/09/2016 [^] [ответить] [смотреть все]  
  • +4 +/
    И, между прочем, классический случай наказания за нарушение unix-way - сделали п... весь текст скрыт [показать]
     
     
  • 4.82, Аноним, 02:02, 14/09/2016 [^] [ответить] [смотреть все]  
  • +/
    програмеры на шелле те еще безопасники, особенно забавно выглядит led который на... весь текст скрыт [показать]
     
  • 1.2, Ilya Indigo, 18:06, 12/09/2016 [ответить] [смотреть все]  
  • +/
    > По сведению разработчиков SUSE проблема уже исправлена в MariaDB 10.0.27...

    Так какого чёрта в репах у них до сих пор 10.0.22?
    Вот теперь у меня уже подгорает.
    Хотя, порт 3306 закрыт, учётки только локальные, включая Гранта, а пользователь рут вообще отсутствует.
    Тут, скорее наоборот подфортило, что наконец-то её обновят в репах, уже не отвертятся.
    Хотя если бы они просто обновляли вовремя пакеты, как во всех нормальных ролингах, они бы вообще этой уязвимости подвержены не были бы.

     
     
  • 2.5, Ян Злобин, 18:48, 12/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    10 0 26 в репах http software opensuse org package mariadb... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.6, Ilya Indigo, 18:53, 12/09/2016 [^] [ответить] [смотреть все]  
  • +/
    openSUSE Tumbleweed официальный выпуск 5 5 29 И битая ссылка на загрузку, та... весь текст скрыт [показать]
     
     
  • 4.59, Ян Злобин, 14:44, 13/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Вот, что вижу я http yan zlobin name files software opensuse org png ... весь текст скрыт [показать]
     
  • 2.19, rt, 22:29, 12/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    var lib mysql my cnf chattr i var lib mysql my cnf Не благодари ... весь текст скрыт [показать] [показать ветку]
     
  • 2.23, KM, 02:54, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    До Кристины достучались?
     
     
  • 3.31, Ilya Indigo, 08:27, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Вот интересный вопрос В принципе, да Я подумал, что она русская, исходя из её ... весь текст скрыт [показать]
     
     
  • 4.33, KM, 09:25, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Я полагаю, она и сама в курсе https bugzilla novell com show_bug cgi id CVE-2... весь текст скрыт [показать]
     
     
  • 5.42, Ilya Indigo, 10:46, 13/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Но если даже опеннет в курсе, то я и не сомневался что она в курсе тоже - Но ... весь текст скрыт [показать]
     
     
  • 6.67, KM, 17:36, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    А по запоздалым обновлением она просветила вопрос Ибо уже и самому интересно ... весь текст скрыт [показать]
     
     
  • 7.69, Ilya Indigo, 17:48, 13/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Пока только написала, что запрос на перевод на ветку 10 1 уже был произведён, но... весь текст скрыт [показать]
     
     
  • 8.72, KM, 21:37, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Важно уже то, что появился обратный отклик и что не приходится гадать и строить ... весь текст скрыт [показать]
     
     
  • 9.92, Ilya Indigo, 17:09, 14/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Thank you for your email I m out of the office and will be back at 2016-09-19 ... весь текст скрыт [показать]
     
  • 9.95, Ilya Indigo, 14:48, 15/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    You can see the declined request here 0 I have to say that I was quite busy f... весь текст скрыт [показать]
     
  • 2.89, Нет, 14:53, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    ПодфАртило От слова фарт , а не от слова форт Повезло, а не укрепило В наг... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.90, Ilya Indigo, 15:05, 14/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Благодарю, запомню.
     
  • 1.11, Аноним, 21:08, 12/09/2016 [ответить] [смотреть все]  
  • +8 +/
    PostgreSQL решает проблему.
     
     
  • 2.22, А, 00:53, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Привнося массу своих https eng uber com mysql-migration Но Postgres - хороша... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.24, Аноним, 04:23, 13/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Хорошая школа - простой NoSQL Который не умеет в произвольные файлы записывать,... весь текст скрыт [показать]
     
     
  • 4.26, Аноним, 04:31, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    А postgresql и не умеет, если специальными плагинами не обвеситься.
     
     
  • 5.48, 1, 12:31, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    COPY SELECT asdf TO tmp asdf txt https www postgresql org docs current... весь текст скрыт [показать]
     
     
  • 6.55, Аноним, 13:40, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    И правда. Тьфу на них!
     
  • 4.28, Лютый жабист_, 05:02, 13/09/2016 [^] [ответить] [смотреть все]  
  • –3 +/
    Хорошая школа - простой NoSQL Для информации NoSQL расшифровывается как not only... весь текст скрыт [показать]
     
     
  • 5.32, Аноним, 08:39, 13/09/2016 [^] [ответить] [смотреть все]  
  • +6 +/
    Ровно до той поры, пока не нужна консистентность данных и сложные выборки. И жрёт оно на порядок больше.
     
  • 5.56, Аноним, 13:50, 13/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Единственная прям фича монги - это шардинг из коробки Выбор же btree для докуме... весь текст скрыт [показать]
     
  • 5.60, Аноним, 16:00, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    так не надо пользоваться программами от жабистов-апачистов, не могут они в безоп... весь текст скрыт [показать]
     
  • 4.34, Аноним, 09:49, 13/09/2016 [^] [ответить] [смотреть все]  
  • +2 +/
    только лучший NoSQL - это тоже PostgreSQL :)
     
  • 4.38, angra, 10:25, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Скажи честно, NoSQL ты видел толко на картинке Или ты говоришь о некой конкретн... весь текст скрыт [показать]
     
     
  • 5.51, Аноним, 13:18, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Ага. DBF :)
     
  • 5.66, Аноним, 17:24, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    я еще и пользуюсь внаглую несколькими видами баз key-value и желаю удачи тебе и ... весь текст скрыт [показать]
     
     
  • 6.87, angra, 06:36, 14/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Но их названия ты конечно не скажешь А то вдруг тебе покажут, как они могут пис... весь текст скрыт [показать]
     
  • 4.44, ueueue, 12:12, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Такой как redis? :) Понятно, что дело было не в бобине, и тем не менее.
     
  • 3.25, Аноним, 04:29, 13/09/2016 [^] [ответить] [смотреть все]  
  • +4 +/
    Если внимательнее прочитать, то понятно, что это всё не абсолютные преимущества ... весь текст скрыт [показать]
     
     
  • 4.41, angra, 10:30, 13/09/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Неужто в документации сразу пишут об еще не обнаруженных багах А может там пишу... весь текст скрыт [показать]
     
     
  • 5.45, Аноним, 12:18, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Это вы так жестоко про MySQL Килотонны багов на https bugs mysql com ... весь текст скрыт [показать]
     
     
  • 6.49, angra, 13:01, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Нет, не про мускул, не про постгрес и даже не про их сравнение по забагованности... весь текст скрыт [показать]
     
  • 5.50, Аноним, 13:09, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    ну у ребят из skype как то же получилось прочитать документацию :)
     
  • 5.54, Аноним, 13:36, 13/09/2016 [^] [ответить] [смотреть все]  
  • +2 +/
    Репликацию сделали нормальную физическую Физическая репликация потребляет трафи... весь текст скрыт [показать]
     
     
  • 6.57, angra, 14:29, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    Какие критерии нормальности Сразу начинаем с демагогии Хороший старт Любая р... весь текст скрыт [показать]
     
     
  • 7.93, Другой Аноним, 08:37, 15/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Мы не о настоящем говорим, а о прошлом, WAL decoder уже есть - pglogical, даже в... весь текст скрыт [показать]
     
  • 6.85, Аноним, 02:14, 14/09/2016 [^] [ответить] [смотреть все]  
  • +/
    большие объемы траффика стоят много денег, поэтому если проект взлетает - потреб... весь текст скрыт [показать]
     
     
  • 7.94, Другой Аноним, 09:01, 15/09/2016 [^] [ответить] [смотреть все]  
  • +/
    физическая репликация надежнее если у тебя пара серваков например с биллингом, ... весь текст скрыт [показать]
     
  • 1.12, Аноним, 21:14, 12/09/2016 [ответить] [смотреть все]  
  • –1 +/
    И что, selinux в нормальных дистрибутивах не спасёт Политиками разрешена запись... весь текст скрыт [показать]
     
     
  • 2.13, Аноним, 21:37, 12/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Скажу больше, selinux из коробки вообще не спасает Только создает видимость без... весь текст скрыт [показать] [показать ветку]
     
  • 2.64, Shichael Migorin, 16:42, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    В нормальных дистрибутивах (например в альтлинукс) нет selinux.
     
  • 1.18, LinuxID, 22:28, 12/09/2016 [ответить] [смотреть все]  
  • +/
    dev-db/mysql-5.6.31:0/18::gentoo
    dev-db/mariadb-10.0.26:0/18::gentoo
    Ждемс обновдений!
     
  • 1.21, stalker37, 23:05, 12/09/2016 [ответить] [смотреть все]  
  • –1 +/
    В перконе уже пофиксили.
     
     
  • 2.29, Христофор, 05:58, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Где в перконе пофиксили ? в репо 5.6.32.... а надо 5.6.33
    Или я не прав?
     
     
  • 3.47, stalker37, 12:22, 13/09/2016 [^] [ответить] [смотреть все]  
  • +/
    This is a CRITICAL update, and the fix mitigates the potential for remote root c... весь текст скрыт [показать]
     
  • 1.27, Аноним, 04:49, 13/09/2016 [ответить] [смотреть все]  
  • +1 +/
    В марие пофиксили с третьей попытки 1 https github com MariaDB server com... весь текст скрыт [показать]
     
  • 1.36, Аноним, 10:12, 13/09/2016 [ответить] [смотреть все]  
  • +/
    Гмм...получается MariaDB 10.1 не уязвима?
     
     
  • 2.40, Аноним, 10:28, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > Гмм...получается MariaDB 10.1 не уязвима?

    Да похоже это не LTS

     
  • 1.43, ALex_hha, 11:20, 13/09/2016 [ответить] [смотреть все]  
  • +1 +/
    Может кто-нибудь объяснить как подразумевается использовать эту уязвимость? Либо вот тут - "для эксплуатации требуется аутентифицированный доступ к БД" они что то не договаривают, ибо просто доступа к БД недостаточно. Так как, например, set global general_log_file требует SUPER privilege, а откуда они возьмутся у обычного пользователя?
     
     
  • 2.46, Аноним, 12:19, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Всякие движки ставят с правами SUPER privilege и оно это деплоит, это не под стр... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.84, Аноним, 02:11, 14/09/2016 [^] [ответить] [смотреть все]  
  • +/
    получение рута на сервере - это не большой факап может вы сразу тогда всем жела... весь текст скрыт [показать]
     
  • 2.52, angra, 13:22, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Для этого придется пройти по ссылке и прочитать оригинал на английском Там есть... весь текст скрыт [показать] [показать ветку]
     
  • 1.53, Аноним, 13:35, 13/09/2016 [ответить] [смотреть все]  
  • –3 +/
    А какого хрена mysql вообще работает под root Тот же postgres делает setgid set... весь текст скрыт [показать]
     
     
  • 2.58, angra, 14:32, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Еще один нечитатель. Мускул не работает под рутом.
     
  • 1.61, CHERTS, 16:28, 13/09/2016 [ответить] [смотреть все]  
  • +/
    Эксплуатация возможно только если у пользователя есть право FILE или SUPER на БД, при нормальном распределении прав на базы, таких прав не дается, то есть и уязвимость не страшна.
     
     
  • 2.63, Shichael Migorin, 16:40, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    В альтлинуксе именно так и есть.
     
  • 2.65, Ilya Indigo, 16:45, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    GRANT ALL PRIVILEGES ON db TO user localhost IDENTIFIED BY password А это... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.78, angra, 00:32, 14/09/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    Да При этом ни FILE, ни SUPER получены не будут А вот так делать нельзя GRANT... весь текст скрыт [показать]
     
  • 2.74, Аноним, 23:09, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Ничего подобного, вы просто не дочитали до конца It is worth to note that attac... весь текст скрыт [показать] [показать ветку]
     
  • 1.71, CHERTS, 21:27, 13/09/2016 [ответить] [смотреть все]  
  • +/
    >>GRANT ALL PRIVILEGES

    Такие разрешения дает только идиот. Максимум, что нужно для любого LAMP хостинга - SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
    Иногда нужно LOCK TABLES, INDEX
    Очень редко EXECUTE

     
     
  • 2.79, angra, 00:38, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    А ты бы поинтересовался для начала, что именно выдаст ALL при применении на DB, ... весь текст скрыт [показать] [показать ветку]
     
  • 1.73, ALex_hha, 22:17, 13/09/2016 [ответить] [смотреть все]  
  • +/
    > Для этого придется пройти по ссылке и прочитать оригинал на английском. Там есть третья секция, утерянная при пересказе.

    я собственно читал оригинал автора, который и нашел эту уязвимость - http://legalhackers.com/advisories/MySQL-Exploit-Remote-Root-Code-Execution-P

    > При помощи FILE создается файл с триггером, который будет выполнен с правами 'root' и уже в триггере делается манипуляция с логами.

    вы сами пробовали? У меня в centos 6 писало что нет прав, ну и опять таки, чтобы работал file нужна соответствующая привелегия, которая не является "стандартной". И получается, что просто аутентифицированного доступа к БД будет недостаточно.

     
     
  • 2.75, Аноним, 23:11, 13/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Посмотрите ещё раз упоминание CVE-2016-6663, который позволяет обойтись без прав... весь текст скрыт [показать] [показать ветку]
     
  • 2.80, angra, 00:41, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Согласен, но FILE все-таки выдается куда чаще, чем SUPER Мне самому интересно у... весь текст скрыт [показать] [показать ветку]
     
  • 1.81, ALex_hha, 01:09, 14/09/2016 [ответить] [смотреть все]  
  • +/
    > Посмотрите ещё раз упоминание CVE-2016-6663, который позволяет обойтись без прав FILE.

    то ли я плохо читал, то ли не нашел, как именно можно создать /var/lib/mysql/my.cnf с нужными нам данными, используя CVE-2016-6663?

     
     
  • 2.83, Аноним, 02:09, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Почитай в багтрекере https bugzilla novell com show_bug cgi id CVE-2016-6662... весь текст скрыт [показать] [показать ветку]
     
  • 2.86, angra, 04:18, 14/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Интересно, как ты читал CVE-2016-6663, если его детали пока еще не опубликованы ... весь текст скрыт [показать] [показать ветку]
     
  • 1.88, ALex_hha, 10:44, 14/09/2016 [ответить] [смотреть все]  
  • +/
    > Интересно, как ты читал CVE-2016-6663, если его детали пока еще не опубликованы.

    имеется ввиду proof of concept, по ссылке, которую я привел выше.

    Кстати интересно, на ubuntu 14.04 вышел фикс только для CVE-2016-6662

    # apt-get changelog libmysqlclient18
    mysql-5.5 (5.5.52-0ubuntu0.14.04.1) trusty-security; urgency=medium

      * SECURITY UPDATE: Update to 5.5.52 to fix security issues - CVE-2016-6662

     
  • 1.91, Аноним, 16:29, 14/09/2016 [ответить] [смотреть все]  
  • +/
    Объясните тупому, у меня на сервере CentOS 6 6 и там только MySQL 5 1 - эта верс... весь текст скрыт [показать]
     
     
  • 2.96, Andrew, 23:03, 15/09/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Согласно комментарию https bugzilla redhat com show_bug cgi id 1375198 c13 у... весь текст скрыт [показать] [показать ветку]
     
  • 1.98, rvs2016, 23:03, 01/10/2016 [ответить] [смотреть все]  
  • +/
    А как можно атаковать удалённо, если skip-networking? При включённом skip-networking сетевые порты ж не прослушиваются и mysql не ожидает никаких подключений из сети.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2016 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by BSH TopList