Опубликована техника обхода 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-код в пространстве пользователя.

В iOS 26.4 включат защиту от кражи iPhone по умолчанию

В следующем крупном обновлении iOS — версии 26.4 — Apple включит функцию Stolen Device Protection по умолчанию. Ранее она была доступна только как опциональная настройка, но теперь станет стандартом для всех пользователей iPhone.

Функция защиты от кражи устройства появилась в начале 2024 года. Тогда Apple сделала её добровольной, во многом потому, что она добавляет дополнительные уровни проверки и может показаться не слишком удобной в повседневном использовании.

О нововведениях рассказало издание MacRumors. Что меняется? Если iPhone находится вне «знакомых мест» (например, не дома и не на работе) для ряда критически важных действий потребуются дополнительные проверки.

Во-первых, для доступа к сохранённым паролям, банковским картам и другим важным данным понадобится обязательная биометрия — Face ID или Touch ID. Ввести просто код-пароль будет нельзя: резервного варианта не предусмотрено.

Во-вторых, для некоторых операций (например, смены пароля Apple ID) вводится так называемая «задержка безопасности». Пользователю придётся подождать час, а затем снова подтвердить действие через биометрию. Это сделано на случай, если злоумышленник знает код разблокировки, но не может пройти Face ID или Touch ID.

Когда функция только появилась в iOS 17.3, её нужно было включать вручную, и многие пользователи, вероятно, даже не пробовали её. С iOS 26.4 всё изменится: защита будет активирована автоматически, хотя при желании её по-прежнему можно будет отключить в настройках.

Фактически Apple усиливает защиту от сценария, когда злоумышленник крадёт iPhone и знает его код-пароль. Теперь одного кода будет недостаточно, чтобы получить доступ к самым конфиденциальным данным или изменить ключевые настройки аккаунта.

Релиз iOS 26.4 ожидается в ближайшее время.

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