Опубликована техника обхода SMEP-защиты при эксплуатации Linux уязвимостей

Опубликована техника обхода SMEP-защиты при эксплуатации Linux уязвимостей

В ядре Linux 3.0 была представлена поддержка режима SMEP (Supervisor Mode Execution Protection), присутствующего в процессорах Intel на базе архитектуры Ivy Bridge. Использование SMEP не даёт переходить из режима ядра к выполнению кода, находящегося на пользовательском уровне, что позволяет блокировать эксплуатацию многих уязвимостей в ядре Linux (shell-код не будет выполнен, так как он находится в пространстве пользователя).

Один из исследователей безопасности опубликовал интересный способ эксплуатации уязвимостей в ядре в обход защиты SMEP (существуют и другие пути обхода SMEP, но данный метод заслуживает внимания в силу своей оригинальности), сообщает opennet.ru.

Метод построен на основе организации подстановки последовательности инструкций в исполняемую область JIT-компилятора (например, подсистемы BPF - Berkeley Packet Filter), генерирующего код на основе входных данных, которые могут контролироваться атакующим. Так как JIT-компилятор контролирует генерацию кода, так просто подставить инструкции не получится. Но можно воспользоваться тем, что входящие данные используются в качестве аргументов генерируемых инструкций. Например, для входных данных "$0xa8XXYYZZ" и "$0xa8PPQQRR" будет сгенерирован код:

b8 ZZ YY XX a8 mov $0xa8XXYYZZ, %eax
b8 RR QQ PP a8 mov $0xa8PPQQRR, %eax
b8 ...

Если пропустить байт с кодом инструкции mov (b8) и передать управление на следующий за ним байт (ZZ) будет выполнен машинный код "ZZ YY XX". При этом переданные в хвосте данные "a8" будут обработаны как ничего не значащая команда test с аргументом из кода команды mov (b8):

ZZ YY XX (подконтрольные атакующему инструкции)
a8 b8 test $0xb8, %al
RR QQ PP (подконтрольные атакующему инструкции)
a8 b8 test $0xb8, %al

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

Миллионы пользователей браузеров стали жертвами расширений-шпионов

Исследователи из Koi Security рассказали о масштабной кампании с использованием расширений для браузеров, за которой, по их оценке, стоит китайская кибергруппа. Новая операция получила название DarkSpectre и затронула около 2,2 млн пользователей Chrome, Edge и Firefox.

Если учитывать более ранние кампании той же группы — ShadyPanda и GhostPoster, — общее число пострадавших превышает 8,8 млн человек за последние семь лет.

Ранее Koi уже связывала DarkSpectre с ShadyPanda — серией расширений, маскировавшихся под полезные инструменты и занимавшихся кражей данных, подменой поисковых запросов и мошенничеством. Тогда речь шла о 5,6 млн пользователей, включая более 100 расширений, часть из которых «просыпалась» только спустя годы после публикации.

Одно из таких расширений для Edge, например, активировало скрытую логику лишь через три дня после установки — очевидно, чтобы спокойно пройти модерацию в магазине. При этом исследователи обнаружили десятки так называемых «спящих» аддонов: сейчас они ведут себя безобидно, набирают аудиторию и положительные отзывы, но могут получить опасные функции с очередным обновлением.

Вторая кампания, GhostPoster, была в основном нацелена на пользователей Firefox. Под видом утилит и VPN-расширений они внедряли JavaScript-код для подмены партнёрских ссылок, трекинга и рекламных махинаций. Среди находок есть даже расширение «Google Translate» для Opera, набравшее практически миллион установок.

Самая свежая и, пожалуй, самая тревожная часть истории — так называемый Zoom Stealer. Это набор из 18 расширений для Chrome, Edge и Firefox, замаскированных под инструменты для Zoom, Google Meet и GoToWebinar. Их задача — собирать корпоративную информацию: ссылки на встречи (включая пароли), ID конференций, темы, описания, расписание и статус регистрации. Данные передаются в реальном времени через WebSocket-соединения.

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

По словам исследователей, эти дополнения запрашивают доступ сразу к 28 платформам видеосвязи, включая Zoom, Microsoft Teams, Cisco WebEx и Google Meet — даже если расширению такой доступ вообще не нужен.

 

«Это не потребительское мошенничество, а инфраструктура корпоративного шпионажа, — подчёркивают специалисты Koi Security. — Пользователи действительно получали обещанную функциональность, доверяли расширениям и ставили им высокие оценки. А наблюдение шло тихо и незаметно».

Собранные данные могут использоваться для шпионажа, сложных схем социальной инженерии и масштабных операций по подмене личности. Связь кампаний с Китаем исследователи подтверждают сразу несколькими признаками: использованием серверов Alibaba Cloud, регистрациями в китайских провинциях, фрагментами кода с китайскими комментариями и мошенническими схемами, ориентированными на JD.com и Taobao.

В Koi Security считают, что это далеко не конец истории. По их словам, у DarkSpectre могут уже быть новые расширения, которые пока выглядят полностью легитимными — они «копят доверие» и просто ждут своего часа.

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