Новые баги в Linux позволяют обойти защиту от Spectre

Новые баги в Linux позволяют обойти защиту от Spectre

Новые баги в Linux позволяют обойти защиту от Spectre

Специалисты в области кибербезопасности рассказали о двух новых уязвимостях в Linux, которые в случае успешной эксплуатации позволяют злоумышленникам обойти ограничения, созданные для защиты от Spectre. В результате такой атаки в руки преступника может попасть конфиденциальная информация прямиком из памяти ядра.

Об уязвимостях, получивших идентификаторы CVE-2020-27170 и CVE-2020-27171, поведал эксперт компании Symantec. По шкале CVSS дыры получили 5,5 баллов из 10, при этом они затрагивают все версии ядра Linux вплоть до 5.11.8.

Есть и хорошая новость: патчи, устраняющие CVE-2020-27170 и CVE-2020-27171, вышли 20 марта, а разработчики Ubuntu, Debian и Red Hat в настоящее время внедряют их в соответствующие дистрибутивы.

Согласно описанию брешей, CVE-2020-27170 позволяет вытащить контент из любой области памяти ядра. А CVE-2020-27171 способна открыть атакующему доступ к данным в пределах 4 ГБ.

Удивительно, что отголоски Spectre и Meltdown всё ещё преследуют многие системы и их разработчиков. Сложно представить нечто сопоставимое по масштабу, учитывая, что впервые об этих уязвимостях стало известно в 2018 году.

Несмотря на массу исправлений, фиксов, патчей и прочих ухищрений, эксперты выявляют дыры, открывающие новые векторы для реализации атаки по сторонним каналам. Например, обнаруженные специалистом Symantec бреши позволяют обойти реализованную в Linux ранее защиту от Spectre.

Для этого используется поддержка ядром Berkeley Packet Filters (eBPF), которая может послужить мостиком между атакующим и содержимым памяти ядра. В частности, существует проблема неограниченных загрузок за пределами границ.

В случае реальной атаки киберпреступник с низкими правами может воспользоваться уязвимостями для получения доступа к конфиденциальной информации. Интересно, что в середине марта сотрудники Google опубликовали код демонстрационного эксплойта, позволяющего провести атаку вида Spectre в браузере Chrome.

В Vim нашли опасную уязвимость: для атаки достаточно просто открыть файл

В текстовом редакторе Vim, которым пользуются миллионы разработчиков и системных администраторов по всему миру, обнаружили опасную уязвимость. Причём речь не об абстрактной опасности, поскольку специально подготовленный файл может запустить произвольные команды в системе сразу после открытия.

Проблема получила оценку 8,2 балла по шкале CVSS, так что история вполне серьёзная.

И особенно неприятно здесь то, насколько легко срабатывает атака: жертве не нужно нажимать на какие-то дополнительные кнопки или подтверждать действия. Достаточно просто открыть вредоносный файл в Vim.

Уязвимость связана с цепочкой из двух ошибок. Первая касается функции modeline, которая позволяет задавать определённые параметры прямо внутри открываемого файла.

В теории это должно быть удобно, но на практике именно здесь и возникла брешь: один из параметров, tabpanel, оказался недостаточно защищён и позволял внедрить выражение, которое не должно было выполняться в таком сценарии.

Дальше включается вторая часть проблемы. Vim распознаёт, что выражение небезопасно, и пытается выполнить его в ограниченной среде — так называемой песочнице. Но тут срабатывает ещё одна ошибка: функция autocmd_add() не выполняет нужную проверку безопасности.

В результате вредоносный код может зарегистрировать автокоманду, которая сработает уже после выхода из песочницы, то есть в обход защитных ограничений.

Именно из-за этой связки багов злоумышленник получает возможность выполнить в системе произвольную ОС-команду с правами того пользователя, который запустил Vim.

Под удар попадают стандартные сборки Vim с поддержкой tabpanel. Как отмечается, это характерно для сборок типа HUGE, а они используются довольно широко. Дополнительный риск создаёт и то, что modeline во многих окружениях включён по умолчанию.

Разработчики Vim уже выпустили срочный патч. Безопасной считается версия 9.2.0272 и новее. Тем, кто пока не может обновиться сразу, советуют хотя бы временно отключить modeline, добавив в .vimrc строку set nomodeline.

RSS: Новости на портале Anti-Malware.ru