Защита целостности системы

редактировать
Защита целостности системы
Уровни безопасности OS X.svg Уровни безопасности, присутствующие в macOS
Разработчики) Apple Inc.
изначальный выпуск 16 сентября 2015 г. ; 5 лет назад ( 2015-09-16)
Операционная система macOS
Включено в OS X El Capitan (OS X 10.11) и более поздние версии
Тип Программное обеспечение компьютерной безопасности
Интернет сайт разработчик.apple.com / library / archive / documentation / Security / Conceptual / System _Integrity _Protection _Guide / Introduction / Introduction.html

Система защиты целостности ( SIP, иногда называют без корней) является функцией безопасности компании Apple «s MacOS операционной системы, введенной в OS X El Capitan (2015) (OS X 10,11). Он включает ряд механизмов, которые задействованы ядром. Центральным элементом является защита файлов и каталогов, находящихся в собственности системы, от изменений процессами без определенных «прав», даже если они выполняются пользователем root или пользователем с привилегиями root ( sudo ).

Apple утверждает, что пользователь root может быть значительным фактором риска для безопасности системы, особенно в системах с одной учетной записью пользователя, в которой этот пользователь также является администратором. По умолчанию SIP включен, но его можно отключить.

СОДЕРЖАНИЕ
  • 1 Обоснование
  • 2 функции
  • 3 Конфигурация
  • 4 Прием
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Обоснование

Apple заявляет, что защита целостности системы - необходимый шаг для обеспечения высокого уровня безопасности. На одной из сессий разработчиков WWDC инженер Apple Пьер-Оливье Мартель описал неограниченный доступ с правами root как одну из оставшихся слабых сторон системы, заявив, что «[любая] вредоносная программа - это один пароль или уязвимость от получения полного контроля над устройством. ". Он заявил, что в большинстве установок macOS есть только одна учетная запись пользователя, которая обязательно несет с собой учетные данные администратора, что означает, что большинство пользователей могут предоставить root-доступ любой программе, которая его запрашивает. Всякий раз, когда пользователь в такой системе получает запрос и вводит пароль своей учетной записи, который, по словам Мартеля, часто является слабым или не существует, безопасность всей системы может быть поставлена ​​под угрозу. Ограничение полномочий root не является чем-то беспрецедентным для macOS. Так, например, версия MacOS предшествующего Mac OS X Leopard обеспечивать уровень 1 в уровне защиты, функция безопасности, которая берет свое начало в BSD и его производных, на которых Macos частично на основе.

Функции
Запрещенный знак (кружок с пересекающей его единственной линией), который отображается во время процесса загрузки, когда системе не разрешено продолжать работу. « Запрещающий символ » отображается, когда macOS не разрешено завершить процесс загрузки. Это может произойти, когда включено «подписывание kext» и пользователь установил неподписанное расширение ядра.

Защита целостности системы включает в себя следующие механизмы:

Защита целостности системы защищает системные файлы и каталоги, помеченные для защиты. Это происходит либо путем добавления расширенного атрибута файла к файлу или каталогу, либо путем добавления файла или каталога к нему, /System/Library/Sandbox/rootless.confлибо и того, и другого. Среди защищенных каталогов являются: /System, /bin, /sbin, /usr(но не /usr/local). Символические ссылки с /etc, /tmpи /varк /private/etc, /private/tmpа /private/varтакже защищены, хотя целевые каталоги сами не защищены. Большинство предустановленных приложений Apple /Applicationsтакже защищены. Ядро, XNU, останавливает все процессы без специальных разрешений от изменения разрешений и содержимого помеченных файлов и каталогов, а также предотвращает инъекцию коды, прикрепление выполнения и DTrace в отношении защищаемых исполняемых файлов.

Начиная с OS X Yosemite, расширения ядра, такие как драйверы, должны быть подписаны кодом с определенным правом Apple. Разработчики должны запросить у Apple ID разработчика с таким правом. Ядро отказывается загружаться, если присутствуют неподписанные расширения, вместо этого показывая пользователю знак запрета. Этот механизм, получивший название «подписывание kext», был интегрирован в систему защиты целостности системы.

Защита целостности системы также очищает определенные переменные среды при вызове системных программ, когда действует протокол SIP. Например, SIP будет очищать LD_LIBRARY_PATH и DYLD_LIBRARY_PATH перед вызовом системной программы, такой как / bin / bash, чтобы избежать внедрения кода в процесс Bash.

Конфигурация

Каталоги, защищенные SIP по умолчанию, включают:

  • /System
  • /sbin
  • /bin
  • /usr
  • /Applications

/usrзащищен за исключением /usr/localподкаталога. /Applicationsзащищен для приложений, предустановленных с Mac OS, таких как Календарь, Фотографии, Safari, Терминал, Консоль, Магазин приложений и Заметки.

Защита целостности системы может быть отключена (полностью или частично) только вне системного раздела. Для этого Apple предоставляет csrutil утилиту командной строки, которую можно запустить из окна Терминала в системе восстановления или с загрузочного установочного диска MacOS, который добавляет аргумент загрузки в NVRAM устройства. Этот параметр применяется ко всем установкам El Capitan или macOS Sierra на устройстве. После установки macOS программа установки перемещает все неизвестные компоненты из отмеченных системных каталогов в /Library/SystemMigration/History/Migration-[UUID]/QuarantineRoot/. За счет предотвращения доступа на запись в системные каталоги права доступа к системным файлам и каталогам автоматически поддерживаются во время обновлений программного обеспечения Apple. В результате восстановление разрешений недоступно в Дисковой утилите и соответствующей diskutilоперации.

Прием

Получение защиты целостности системы было неоднозначным. Macworld выразил обеспокоенность тем, что Apple может забрать полный контроль у пользователей и разработчиков в будущих выпусках и постепенно переместить политику безопасности macOS в сторону политики безопасности мобильной операционной системы Apple iOS, после чего для установки многих утилит и модификаций потребуется взлом. Некоторые приложения и драйверы не будут работать в полной мере или не будут работать вообще, если функция не отключена, временно или навсегда. Ars Technica предположила, что это может непропорционально затронуть мелких разработчиков, поскольку более крупные могут работать с Apple напрямую. Однако они также отметили, что у большинства пользователей, включая опытных, не будет причин отключать эту функцию, заявив, что у нее «почти нет недостатков».

Смотрите также
использованная литература
внешние ссылки
Последняя правка сделана 2024-01-08 03:13:13
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте