Уязвимости в macOS позволяют обойти систему защиты конфиденциальности

Программный инженер и разработчик Джефф Джонсон (Jeff Johnson) раскрыл подробности об уязвимостях в macOS, позволяющих обходить механизм защиты конфиденциальности. Джонсон уведомил Apple о проблемах более полугода назад, и поскольку компания так и не исправила их, решил сообщить о них широкой общественности.

Уязвимости затрагивают систему защиты конфиденциальности TCC (Transparency, Consent, and Control), впервые появившуюся в macOS Mojave и блокирующую неавторизованным приложениям доступ к определенным файлам. Однако, как выяснил Джонсон, вредоносное ПО все-таки может получить доступ к файлам в ~/Library/Safari, обычно доступным только для Safari, Finder и приложений, которым были даны специальные разрешения (например, полный доступ к дискам).

По словам инженера, проблемы связаны с тем, что исключения TCC основываются не на пути файла, а на идентификаторе приложения (bundle identifier), а сама TCC должным образом не проверяет подписи кода. «Поэтому атакующий может создать копию приложения в другом месте на диске, изменить источник копии, и у копии приложения с измененным источником по-прежнему будет такой же доступ к файлам, как и у оригинального приложения, в данном случае Safari», — сообщил Джонсон.

Кроме того, JavaScript-код для отображения панели расширений в настройках Safari запускается в контексте основного приложения, а не песочницы Web Content helper, а у основного приложения Safari есть доступ к файлам в вышеупомянутой директории.

Для того чтобы продемонстрировать эксплоит, Джонсон представил образец проекта Xcode. Однако он также объяснил, что обойти TCC может любое загруженное из интернета приложение.

Источник: https://www.securitylab.ru/news/509637.php