Песочница, представленная в 2007 году и обязавшаяся с 2012 года, – это инструмент, используемый macOS для ограничения ущерба, который может нанести взломанное приложение. Apple говорит : «Хотя App Sandbox не предотвращает атаки на ваше приложение, он сводит к минимуму вред, который может нанести успешное приложение. Песочница для приложений macOS защищает пользователей, ограничивая количество проблем, которые может вызвать приложение.
Читайте также: 4 лучших приложения-песочницы для Windows, которые обеспечат вашу безопасность
Что такое «песочница» приложений macOS?
Каждое приложение имеет свою собственную область для игры: «песочницу». Если приложение хочет выйти за пределы своей «песочницы», ему необходимо запросить разрешение у операционной системы. В зависимости от настроек песочницы операционная система либо отклонит, либо одобрит запрос приложения, предоставляя при этом как можно меньше конкретной информации для выполнения запроса.
Contents
Что такое «песочница» приложений macOS?
g.png" alt="о песочнице">Представьте себе машину. Водитель защищен множеством функций безопасности, таких как антиблокировочная система, подушки безопасности, зоны деформации и многое другое. В 2007 году, когда появилась App Sandboxing, аналогов компьютерных систем еще не существовало. На вопрос вводная презентация , где ремни безопасности для компьютеров? Песочница защищает пользователей так же, как автомобили защищают своих водителей: устраняя сбои с помощью систем уменьшения ущерба. Независимо от того, вызвано ли это вредоносной деятельностью или ошибками в кодировании, ущерб снижается.
Поскольку песочница ограничивает возможности приложений, она может ограничивать свободу разработчиков. Приложения-песочницы работают медленнее и требуют больше времени для разработки. Благодаря огромным возможностям Mac ограничения песочницы могут оказать огромное влияние на совместимость различных приложений. В результате опытные пользователи часто вынуждены выбирать приложения, которые работают за пределами изолированной программной среды, либо из-за проблем с производительностью, либо из-за проблем с функциями.
Как работает «песочница» приложения?
Песочница основана на принципе минимальных привилегий. Короче говоря, системы могут делать то, что им нужно, но не более того. Ограничивая каждую часть системы выполнением только заявленной цели, вы снижаете вероятность взлома вашего приложения. Например, у приложения-фонарика нет причин иметь доступ к вашему списку контактов.
Приложения могут выходить за пределы своей «песочницы», но только с разрешения операционной системы. Возьмем диалоговое окно «Сохранить и открыть» в macOS. Приложение внутри своей песочницы не может напрямую обращаться к ресурсам файловой системы на вашем жестком диске. Например, он не может нарисовать открытую панель в «~/Documents». Вместо этого приложение должно запросить классы API Powerbox с NSOpenPanel
и NSSavePanel
для доступа к панели.
Приложение не может напрямую видеть, что происходит внутри Powerbox. Приложению будет доступен только открытый или сохраненный файл. Таким образом, приложения смогут выполнять важные функции без ненужного риска.
Эта функциональность включается цифрой право (в частности, com.apple.security.files.user-selected.read-write
). Разработчики приложений устанавливают права, которые определяют, что делает приложение
Как работает «песочница» приложения?
истема предоставляет приложению соответственно ограниченный уровень функциональности.Этот мыслительный процесс лежит в основе всей модели и механизма изолированной программной среды приложений: приложения должны заявить о намерении и запросить разрешение у руководителя на уровне ОС, чтобы совершить что-то опасное.
Изолированные и не изолированные приложения
С 1 июня 2012 г. все сторонние приложения, распространяемые через Mac App Store, должны находиться в изолированной программной среде. Хотя песочница действительно обеспечивает широкий спектр функций приложений, вы обнаружите, что приложения Mac App Store часто более ограничены, чем их компоненты, не изолированные в песочнице. Некоторые разработчики даже поддерживают две версии: полнофункциональное приложение для прямой загрузки и упрощенную версию для Mac App Store. Из-за большей сложности разработки в песочнице добавить новые функции в приложение становится сложнее, если эта функциональность даже разрешена ОС.
Хотя изолированные приложения могут получить преимущества распространения Mac App Store, вы можете угадайте, насколько ценным мы это считаем . Песочницу также можно расширить с помощью разрешений безопасности. Хотя приложение не может включить Разрешения на доступ самостоятельно, оно может попросить пользователя сделать это.
Чтобы узнать, какие из ваших приложений находятся в «песочнице», откройте «Монитор активности» и щелкните правой кнопкой мыши заголовки столбцов, чтобы добавить «Песочницу» в окно.
Некоторые приложения просто не могут существовать в изолированной программной среде. Фактически, использование песочницы предотвращает множество ценных вариантов использования. Песочница предотвращает взаимодействие, наблюдение или модификацию между приложениями, что значительно ограничивает взаимодействие приложений. Общесистемные ярлыки, такие как TextExpander, полностью запрещены, поскольку такой уровень функциональности может быть разрешен песочницей.
Заключение
Хотя это и было многообещающе, песочница для приложений macOS не была реализована должным образом. Это ограничило уникальные преимущества приложений Mac, такие как скорость и расширенная функциональность. Приложения, работающие за пределами «песочницы», почти всегда более функциональны и быстрее. С точки зрения опытного пользователя, мои наиболее часто используемые приложения не изолированы в песочнице. Такие приложения, как TextExpander, SnagIt и TotalFinder, играют решающую роль в моей повседневной работе. Чтобы избежать подобного широко распространенного уклонения, будущие системы безопасности должны быть гибкими и мощными, сбалансированными с прозрачностью.
Изображение предоставлено: Изолированные и не изолированные приложенияer nofollow" title="Яблоко">Яблоко