Подмена кода в подлинных приложениях macOS: как работает новая уязвимость и есть ли реальная угроза
Исследователи по безопасности нашли способ подменить исполняемый файл внутри проверенной программы для macOS так, чтобы встроенная защита Gatekeeper не выдала никаких предупреждений. Уязвимость затрагивает софт, загруженный из интернета, и требует выполнения определенной цепочки действий с .tar-архивами. В Apple отказались считать это серьезным взломом, назвав происходящее вектором социальной инженерии, однако у логики исследователей есть весомые основания.
Содержание4 разделов · нажмите, чтобы развернуть
Контекст: как macOS проверяет сторонний софт
Операционная система Apple долгое время считалась устойчивой к вредоносному ПО благодаря системе подписи и нотаризации кода. Защитный механизм Gatekeeper впервые появился в OS X Mountain Lion в 2012 году проверяет любое новое приложение при первом запуске. Если программа скачана из сети, система запрашивает подтверждение пользователя и сверяет цифровой сертификат с базой Apple обязательная нотаризация стороннего софта введена в macOS Catalina в 2019 году.
Программы из Mac App Store работают в изолированной среде и проверяются по жестким стандартам еще до публикации. Софт, скачанный с сайтов разработчиков, проверяется иначе. На этом разграничении и строится уязвимость, открытая исследователями Талалом Хадж Бакри (Talal Haj Bakry) и Томми Мыском (Tommy Mysk).
Анатомия уязвимости: как обмануть Gatekeeper
Проблема заключается в том, как именно macOS хранит данные о доверии к файлу. Когда приложение проходит первичную проверку Gatekeeper, система запоминает его как безопасное.
Исследователи обнаружили следующую последовательность действий, которая обходит регулярные проверки:
- Пользователь скачивает приложение с сайта разработчика и запускает его один раз. Разрешение получено, метка доверия присвоена.
- Приложение упаковывается в архив формата
.tar. - Оригинальный файл программы удаляется.
- Приложение извлекается из
.tar-архива обратно. - Главный исполняемый файл внутри контейнера
.appзаменяется на вредоносный код.
При повторном запуске такого разорхивированного и модифицированного приложения Gatekeeper молчит. Для операционной системы это все еще та самая проверенная программа, хотя ее сердцевина изменилась.
На практике исследователи продемонстрировали следующий сценарий. Модифицированное приложение запрашивает доступ к файлам и папкам пользователя через стандартное системное окно macOS. Пользователь, видя знакомое имя надежной программы, вводит пароль или разрешает доступ. Получив нужные права и выполнив вредоносный скрипт, программа тихо восстанавливает свой исходный код, заметая следы.
Почему Apple не спешит выпускать патч
Исследователи передали свои находки в Apple, однако инженеры компании не посчитали это критической уязвимостью. Логика Apple прозрачна: для реализации такой атаки злоумышленнику требуется либо физический доступ к заблокированному Mac, либо возможность запускать произвольный код от имени текущего пользователя.
В представлении Apple это сценарий социальной инженерии, где пользователя обманом заставляют сделать несколько специфических шагов. Если хакер уже получил доступ к выполнению команд в вашей системе (например, через ранее загруженный вредоносный скрипт), подмена приложения — лишь один из способов углубить присутствие.
Позиция Бакри и Мыска тоже убедительна. Проблема в том, что macOS проверяет подлинность приложения в целом, а не контролирует целостность отдельных внутренних компонентов после разорхивации. Если бы операционная система воспринимала извлеченное из .tar приложение как новую установку и проверяла его заново, брешь была бы закрыта.
Что это означает для пользователей
Вероятность столкнуться с подобной атакой на практике мала. Обычному пользователю придется не просто скачать вредоносный файл, а заархивировать, удалить, извлечь и запустить подмененный софт.
Правила цифровой гигиены помогают полностью исключить этот риск:
- Устанавливайте софт из Mac App Store, когда это возможно. Программы из официального магазина ставятся в систему иначе и полностью защищены от данного метода подмены.
- Не архивируйте рабочие приложения через командную строку без необходимости. Если нужно освободить место, проще удалить программу и при необходимости скачать её с сайта разработчика повторно.
- Не запускайте сомнительные скрипты. Уязвимость не работает сама по себе — атакующему нужен первоначальный зацеп в вашей системе.
- Контролируйте физический доступ к устройству. Не оставляйте разблокированный Mac без присмотра.
Перед нами брешь в логике работы Gatekeeper, но для ее эксплуатации требуется слишком много совпадений. Apple пока не торопится переписывать алгоритмы проверки архивов, поэтому главная защита сейчас — внимательность при работе со сторонним софтом.




Комментариев 0