Настройки приватности macOS можно обойти через Open and Save Panel
Исследователь показал, как приложение может получить доступ к защищённым папкам macOS, даже если настройки Privacy & Security это запрещают.
Известный macOS-исследователь Говард Оукли (Howard Oakley) из блога The Eclectic Light Company продемонстрировал неприятную особенность системы приватности macOS: приложение может сохранить доступ к защищённым папкам вроде Documents, даже если пользователь явно отключил этот доступ в настройках Privacy & Security. При этом интерфейс настроек продолжает показывать, что доступ заблокирован.
Что произошло
Оукли написал тестовое приложение Insent и показал пошаговый сценарий на macOS Tahoe 26.4, который воспроизводится начиная с macOS 13.5 Ventura. Суть проблемы — в том, как взаимодействуют два механизма доступа: consent (согласие пользователя через системный диалог) и intent (намерение, выраженное через стандартную панель Open and Save).
Как это работает
За защиту приватных папок в macOS отвечает система TCC (Transparency, Consent, and Control). Она работает в паре с sandboxd — демоном песочницы, который перехватывает обращения приложений к защищённым директориям.
Когда приложение обращается к папке Documents напрямую, sandboxd перехватывает запрос и спрашивает TCC: есть ли разрешение? Если нет — показывает пользователю диалог.
Но когда пользователь сам выбирает папку через стандартную панель Open and Save Panel, система расценивает это как выражение намерения (intent). В этом случае sandboxd снимает ограничение песочницы для этой папки, и TCC больше не участвует в процессе.
graph TD
A[Приложение запрашивает доступ к Documents] --> B{Как запрошен доступ?}
B -->|Прямой вызов File Manager| C[sandboxd перехватывает]
C --> D{TCC: есть разрешение?}
D -->|Да| E[✅ Доступ разрешён]
D -->|Нет| F[🔒 Показать диалог consent]
B -->|Через Open/Save Panel| G[sandboxd НЕ перехватывает]
G --> H[✅ Доступ разрешён без проверки TCC]
H --> I[⚠️ Ограничение песочницы снято навсегда]
Шаги воспроизведения
- Приложение запрашивает доступ к Documents → пользователь соглашается
- Пользователь отключает доступ в Privacy & Security → Files & Folders
- Прямой доступ заблокирован — всё работает корректно
- Пользователь выбирает Documents через стандартный диалог Open/Save
- Приложение снова получает полный доступ к Documents
- Настройки продолжают показывать, что доступ отключён
Вернуть настройки к исходному состоянию можно только через терминал:
tccutil reset All co.eclecticlight.Insent
После этого нужно перезагрузить Mac. Переключатель в настройках Privacy & Security не поможет.
Почему это важно
| Аспект | Детали |
|---|---|
| Затронутые версии | macOS 13.5 Ventura и новее, включая macOS 26.4 Tahoe |
| Тип проблемы | Рассогласование интерфейса настроек и реального поведения системы |
| Вектор атаки | Приложение должно побудить пользователя выбрать папку через Open/Save Panel |
| Сложность эксплуатации | Средняя — требуется взаимодействие с пользователем |
| Исправление от Apple | Пока отсутствует |
Проблема не является классической уязвимостью с удалённым исполнением кода. Но она подрывает доверие к интерфейсу настроек приватности — пользователь видит одно, а система делает другое. Для security-модели macOS, которая строится на прозрачности и контроле пользователя, это серьёзный изъян.
Самое тревожное — постоянство полученного доступа. Единственный способ отозвать его — команда в терминале и перезагрузка. Трудно поверить, что такое поведение было задумано, — но оно существует.
tccutil reset в терминале для сброса разрешений конкретного приложения.
— Следите за обновлениями macOS — Apple может исправить эту проблему в будущих версиях.Исследование Оукли — часть серии публикаций о механизмах приватности macOS. Ранее он подробно разбирал разницу между Files & Folders и Full Disk Access, а также логику работы consent и intent в TCC. Остаётся ждать реакции Apple и возможного патча.