Новая дыра в macOS: libAppleArchive позволяет обойти Gatekeeper

Новая дыра в macOS: libAppleArchive позволяет обойти Gatekeeper

Новая дыра в macOS: libAppleArchive позволяет обойти Gatekeeper

Apple снова попала в новости из-за уязвимости — на этот раз в своей библиотеке libAppleArchive, которая используется для работы с архивами .aar. Исследователь Снулли Кеффабер нашёл критическую брешь (CVE-2024-27876, CVSS 8.1), позволяющую не только записывать файлы в произвольные места на диске, но и обходить защиту Gatekeeper.

Всё началось с того, что Кеффабер написал собственный парсер — libNeoAppleArchive — чтобы изучить поведение Apple Archive на Linux.

Работая с логикой обработки симлинков, он заметил странность: архив можно было распаковать так, что один из файлов на выходе оказывался… симлинком в любую другую директорию на системе.

Дальнейшие эксперименты показали, что во время распаковки возникает «состояние гонки» (race condition). Библиотека сначала проверяет, существует ли нужная папка, и только потом пытается её создать.

Если в этот момент подложить симлинк на другую директорию, libAppleArchive всё равно будет считать, что каталог создан, и продолжит писать туда файлы. В результате данные попадут по адресу, на который указывает симлинк — полностью под контролем атакующего.

Повторив структуру из симлинков и файлов в архиве несколько раз, Кеффаберу удалось сильно повысить процент успеха атаки.

На этом он не остановился: следующей целью стал обход Gatekeeper. Оказалось, что стандартная утилита Archive Utility сначала распаковывает файлы во временную директорию, а только потом вешает на них карантинные метки. Если с помощью уязвимости заставить libAppleArchive распаковать файл вне этой директории, он обойдёт карантин и сможет запускаться без предупреждений — что, конечно, опасно.

Уязвимость затрагивает не только macOS. libAppleArchive используется в WorkflowKit (Shortcuts), FlexMusicKit, ClipServices, а также в приложении «Файлы» на iOS, которое тоже умеет распаковывать .aar. Даже если включены проверки пути вроде pathIsValid(), гонка всё равно позволяет их обойти.

Кеффабер опубликовал PoC, продемонстрировав, что атака вполне реалистична, хотя и требует знания таких деталей, как переменная $TMPDIR.

Apple уже закрыла дыру в свежих апдейтах, так что срочно обновляйтесь — уязвимость серьёзная, а эксплойт уже в сети.

Корпоративный бумеранг: основатель WordPress пережил попытку переворота

В Automattic случился корпоративный переворот со скоростью ситкома. 9 сентября совет директоров отправил основателя и гендиректора Мэтта Малленвега в принудительный оплачиваемый отпуск. Спустя два дня он вернулся к управлению, а теперь прежний состав совета сам покидает компанию.

Решение об отстранении Малленвега поддержали трое из четырёх директоров. Сам основатель проголосовал против.

По данным СМИ, резолюцию он получил всего за 50 минут до заседания и не успел проконсультироваться с юристами. Временным гендиректором назначили финансового директора Марка Дэвиса.

Малленвег отказался признавать поражение, удалил других администраторов из корпоративного Slack и сообщил сотрудникам, что снова руководит компанией. Свой новый статус он описал коротко: «Теперь я пират».

Уже в пятницу основатель заявил, что совет снова пришёл к согласию, а руководство WordPress публично поддержало его возвращение. The Verge подтвердил, что двухдневная ссылка закончилась.

Секрет такого камбэка оказался в корпоративном праве. Совет директоров действительно может снять гендиректора, но состав самого совета определяют акционеры.

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

Почему директора начали операцию, не обеспечив поддержку акционеров, пока неизвестно. Возможно, они переоценили собственные позиции или рассчитывали на союзников.

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