Данный пост станет первым в нашей новой, ориентированным в первую очередь на системных администраторов рубрике, которая будет целиком посвящена новым, «выдающимся» уязвимостям в популярном программном обеспечении, в том числе том, которое принято считать надёжно защищённым от атак и взломов. К сожалению, совершенно неуязвимого софта на свете не бывает. Степень безопасности того или иного программного пакета зачастую определяется не только профессионализмом его разработчиков, но и тем, сколько внимания он привлекает к себе со стороны как экспертов по безопасности, так и злоумышленников и, соответственно, как быстро уязвимости выявляются и устраняются.
Итак.
Ядерная проблема
29 апреля 2014 года компания Novell опубликовала запись об обнаруженной в ядре Linux уязвимости (CVE-2014-0196), позволяющей локальным пользователям осуществлять атаку класса «отказ в обслуживании» (Denial of Service) или повысить свои привилегии до уровня суперпользователя (root). Согласно результатам проведенного исследования, уязвимыми являются версии ядер от 2.6.31-rc3 до 3.14.3. NationalVulnerability Database присвоила уязвимости приоритет «Высокий» («High»).
Появление работающих эксплойтов себя ждать не заставило, что, в общем-то, и неудивительно.
Зловреды, эксплуатирующие данную уязвимость, повышают привилегии обычного пользователя до «root». Суперпользователь в UNIX-подобных системах может осуществлять любые операции, его полномочия практически ничем не ограничены.
Соответственно, злоумышленник с root-полномочиями может получить полный доступ как минимум к некоторым ресурсам компании-мишени (тем, на которые распространяются его root-права) и осуществлять внутри любые операции, в том числе копировать и удалять данные, устанавливать программное обеспечение (вредоносное) и так далее. Это чревато утечками важнейшей информации.
Технические подробности
Уязвимость вызвана ошибкой в функции n_tty_write (drivers/tty/n_tty.c), в которой некорректно обрабатывается доступ к tty(teletype) при задействовании флагов «LECHO & !OPOST». 12 мая 2014 года был опубликован исходный код рабочего эксплойта к данной уязвимости.
Ключевая угроза состоит в возможности повышения привилегий пользователя до root-уровня.
Tweet
По итогам проведенного исследования, 3 мая 2014 года в исходный код ядра Linux были внесены соответствующие изменения.
Возможные последствия успешной эксплуатации
- Крах системы;
- Отказ в обслуживании;
- Повреждение области памяти ядра;
- Повышение полномочий локального пользователя до root.
Уязвимые дистрибутивы
- RedHat 6.2 AUS;
- RedHat 6.3 EUS;
- Red Hat Enterprise MRG2;
- Debian 6: выше версии 2.6.32-5;
- Debian 7: Linux-образ ниже версии 3.2.57-3+deb7u1;
- Ubuntu версия 10.04: Linux-образ ниже версии 2.6.32-58.121;
- Ubuntu версия 12.04: Linux-образ ниже версии 3.2.0-61.93;
- Ubuntu версия 12.10: Linux-образ ниже версии 3.5.0-49.74;
- Ubuntu версия 13.10: Linux-образ ниже версии 3.11.0-20.35;
- Ubuntu версия 14.04: Linux-образ ниже версии 3.13.0-24.47.
Исследование
Эксперты «Лаборатории Касперского» в ходе исследования получили концепты эксплойтов, и кроме того, с помощью Kaspersky Security Network смогли выявить около десяти разных сэмплов вредоносных программ, использующих данную уязвимость.
В ходе исследования концепты и активные зловреды детектировались под следующими названиями:
- Exploit.Linux.CVE-2014-0196.a;
- HEUR:Exploit.Linux.CVE-2014-0196.a.
Решение
Необходима оперативная установка всех новейших обновлений безопасности для операционных систем с версиями, попавшими в список уязвимых. Скачать их можно на официальных сайтах разработчиков дистрибутивов.