Песочница (компьютерная безопасность) - Sandbox (computer security) - Wikipedia

В компьютерная безопасность, а песочница представляет собой механизм безопасности для разделения запущенных программ, обычно с целью смягчения системных сбоев и / или распространения уязвимостей программного обеспечения. Он часто используется для выполнения непроверенных или ненадежных программ или кода, возможно, от непроверенных или ненадежных третьих лиц, поставщиков, пользователей или веб-сайтов, без риска причинения вреда хост-машине или Операционная система.[1] Песочница обычно предоставляет строго контролируемый набор ресурсов для запуска гостевых программ, таких как хранилище и память. поцарапать пространство. Доступ к сети, возможность проверки хост-системы или чтения с устройств ввода обычно запрещены или сильно ограничены.

В смысле обеспечения строго контролируемой среды песочницы можно рассматривать как конкретный пример виртуализация. Песочница часто используется для тестирования непроверенных программ, которые могут содержать вирус или другой вредоносный код, не позволяя программному обеспечению нанести вред хост-устройству.[2]

Реализации

Песочница реализуется путем выполнения программного обеспечения в ограниченной среде операционной системы, таким образом контролируя ресурсы (например, файловые дескрипторы, память, пространство файловой системы и т. д.), которые может использовать процесс.[3]

Примеры реализации песочницы включают следующее:

  • Изолированная среда приложений Linux, построенная на Seccomp, cgroups и Пространства имен Linux. В частности, используется Systemd, Гугл Хром, Fire Fox, firejail.
  • яблоко App Sandbox требуется для приложений, распространяемых через Apple Магазин приложений Mac и рекомендуется для других подписанных приложений.[4]
  • Google Изолированный API[5]
  • А тюрьма: ограничения сетевого доступа и ограниченное пространство имен файловой системы. Тюрьмы чаще всего используются в виртуальный хостинг.[6]
  • Выполнение на основе правил дает пользователям полный контроль над тем, какие процессы запускаются, порождаются (другими приложениями) или разрешается внедрять код в другие приложения и иметь доступ к сети, за счет того, что система назначает уровни доступа для пользователей или программ в соответствии с набор установленных правил.[7] Он также может контролировать безопасность файлов / реестра (какие программы могут читать и записывать в файловую систему / реестр). В такой среде у вирусов и троянских программ меньше возможностей заразить компьютер. В SELinux и Apparmor фреймворки безопасности - две такие реализации для Linux.
  • Виртуальные машины подражать полный хост-компьютер, на котором обычная операционная система может загружаться и работать как на реальном оборудовании. Гостевая операционная система работает изолированно в том смысле, что она не работает отрицательно.[требуется разъяснение ] на хосте и может получить доступ к ресурсам хоста только через эмулятор.
  • «Песочница» на собственных хостах: исследователи безопасности в значительной степени полагаются на технологии «песочницы» для анализа поведения вредоносных программ. Создавая среду, которая имитирует или копирует целевые рабочие столы, исследователи могут оценить, как вредоносное ПО заражает и компрометирует целевой хост. Многочисленные анализ вредоносных программ сервисы основаны на технологии песочницы.[8]
  • Native Client - это песочница для эффективного и безопасного выполнения скомпилированного кода C и C ++ в браузере, независимо от операционной системы пользователя.[9]
  • Возможность Системы можно рассматривать как мелкозернистый механизм песочницы, в котором программы получают непрозрачные токены при порождении и имеют возможность делать определенные вещи в зависимости от того, какие токены они содержат. Реализации на основе возможностей могут работать на различных уровнях, от ядра до пользовательского пространства. Пример изолированной программной среды на основе возможностей пользователя включает рендеринг HTML в веб-браузер.
  • Режим безопасных вычислений (seccomp) это песочница, встроенная в ядро ​​Linux. При активации в строгом режиме seccomp разрешает только записывать(), читать(), выход(), и sigreturn () системные вызовы.
  • HTML5 имеет атрибут "песочница" для использования с iframe.[10]
  • Виртуальные машины Java включить песочницу, чтобы ограничить действия ненадежного кода, такого как Java-апплет.
  • Сеть общеязыковая среда выполнения обеспечивает Безопасность доступа кода для обеспечения соблюдения ограничений на ненадежный код.
  • Изоляция программных сбоев (SFI),[11] позволяет запускать ненадежный собственный код, помещая в изолированную среду все инструкции сборки, сохранения, чтения и перехода в изолированные сегменты памяти.
  • Windows Vista и более поздние выпуски включают запущенный процесс в «низком» режиме, известный как «Контроль учетных записей пользователей» (UAC), который разрешает запись только в определенный каталог и ключи реестра. Windows 10, начиная с версии 1903 (выпущенной в мае 2019 г.), предоставляет функцию, известную как «Песочница Windows: изолированная, временная среда рабочего стола, в которой вы можете запускать ненадежное программное обеспечение, не опасаясь длительного воздействия на ваш компьютер».[12]

Некоторые из вариантов использования песочниц включают следующее:

  • Онлайн судья системы для тестирования программ в олимпиадах по программированию.
  • Новое поколение пастебины позволяя пользователям выполнять вставленные фрагменты кода на сервере pastebin.

Смотрите также

Рекомендации

  1. ^ Гольдберг, Ян; Вагнер, Давид; Томас, Рэнди и Брюэр, Эрик (1996). «Безопасная среда для ненадежных вспомогательных приложений (ограничивает хитрого хакера)» (PDF). Материалы шестого симпозиума USENIX по безопасности UNIX. Получено 25 октября 2011.
  2. ^ Гейер, Эрик (2012-01-16). «Как обезопасить свой компьютер с помощью песочницы». TechHive. Получено 2014-07-03.
  3. ^ «Приложения-песочницы» (PDF). 2001. Получено 7 мая 2013.
  4. ^ «О тестовой среде приложения». developer.apple.com. Получено 2020-12-09.
  5. ^ google / sandboxed-api, Google, 8 декабря 2020 г., получено 2020-12-09
  6. ^ «Безопасная система Auto-Sandboxing». Получено 2015-01-30.
  7. ^ «Безопасность компьютерных систем и контроль доступа». 1991. Архивировано с оригинал 28 мая 2013 г.. Получено 17 мая 2013.
  8. ^ «Собственная песочница клиента - ненадежный собственный код x86» (PDF). Получено 2015-01-03.
  9. ^ Добро пожаловать в Native Client
  10. ^ Блог группы разработчиков Internet Explorer. «Глубокая защита: блокировка гибридных приложений с помощью тестовой среды HTML5». IEBlog.
  11. ^ Вахбе, Роберт (1993). «Эффективное устранение неисправностей на основе программного обеспечения» (PDF).
  12. ^ «Песочница Windows». 2018-12-18. Получено 2010-01-07.

внешняя ссылка