Новая дыра в 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 уже закрыла дыру в свежих апдейтах, так что срочно обновляйтесь — уязвимость серьёзная, а эксплойт уже в сети.

Росавиация предложила ограничить использование пауэрбанков на борту

Росавиация рекомендовала Минтрансу законодательно ограничить использование пауэрбанков на борту самолётов во время полёта. Такие предложения появились по итогам расследования инцидента с возгоранием портативного аккумулятора, произошедшего в феврале.

Отчёт о расследовании инцидента на рейсе «Уральских авиалиний» из Екатеринбурга в Стамбул, где в феврале загорелся пауэрбанк и потребовалась вынужденная посадка, оказался в распоряжении «Известий».

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

Этот пробел Росавиация предлагает устранить, введя ограничения или даже полный запрет на использование портативных зарядных устройств на борту воздушных судов в течение всего полёта.

Как сообщили в пресс-службе «Уральских авиалиний» в ответ на запрос «Известий», авиакомпания уже внесла соответствующие изменения в правила перевозки. Аналогичные ответы издание получило от S7 и «Аэрофлота». В «Аэрофлоте» также отметили, что приняли нормы, рекомендованные Международной ассоциацией воздушного транспорта (IATA).

Согласно правилам «Уральских авиалиний», такие устройства нельзя заряжать от бортовой сети самолёта и использовать во время полёта. Кроме того, установлены ограничения по содержанию лития — не более 2 г — и по удельной мощности, которая не должна превышать 100 Вт/ч. В рекомендациях IATA также указано, что подобные устройства нельзя хранить в ручной клади, размещённой на багажных полках.

Ограничения на провоз пауэрбанков уже ввели и многие зарубежные авиакомпании. Среди них — Lufthansa Group, AJet, Azal, Emirates, Pegasus, El Al и другие. Такие меры принимались после расследования инцидентов с возгоранием портативных аккумуляторов во время полётов.

«Рано или поздно ограничительные меры придётся принять, поскольку возможная угроза и её последствия могут оказаться совершенно несопоставимыми с теми неудобствами, которые создают запреты, — прокомментировал инициативу Росавиации председатель Общероссийского объединения пассажиров Илья Зотов. — В ряде стран, например в Китае, подобные ограничения на использование портативных аккумуляторов уже действуют. При этом существенного дискомфорта для пассажиров они не создают, поскольку на борту доступны альтернативные способы зарядки, включая розетки и USB-порты. Таким образом, каких-либо серьёзных сложностей для пассажиров не возникает».

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

Между тем сама Росавиация позднее уточнила свою позицию по поводу провоза пауэрбанков:

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

В ведомстве также подчеркнули, что рекомендации Уральского МТУ, на которые ссылались «Известия», не носят обязательного характера. Оснований для полного запрета портативных аккумуляторов в Росавиации в настоящее время не видят.

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