Открыть сервис

Sandboxie: песочница для изоляции программ

Sandboxie — это проприетарная программа для изоляции запускаемых приложений в операционной системе Windows, реализующая концепцию «песочницы» (sandbox). Разработанная израильским программистом Рони Циони (Ronen Tzur), она позволяет запускать программы в изолированной среде, перехватывая их обращения к файловой системе, реестру и другим системным ресурсам. Это предотвращает внесение постоянных изменений в операционную систему со стороны тестируемого или потенциально опасного программного обеспечения.

История

Первая версия Sandboxie была выпущена в 2004 году. Программа быстро завоевала популярность среди специалистов по информационной безопасности и обычных пользователей как средство для безопасного просмотра веб-сайтов и тестирования сомнительного ПО. Изначально Sandboxie распространялась как условно-бесплатное (shareware) приложение с ограниченным функционалом в бесплатной версии.

В 2013 году компания Invincea, специализирующаяся на кибербезопасности, приобрела Sandboxie. Под управлением Invincea разработка продолжилась, но в 2017 году активы компании, включая права на Sandboxie, были куплены корпорацией Sophos. В декабре 2019 года Sophos объявила о прекращении поддержки и разработки Sandboxie, переведя базовую версию программы в разряд бесплатных.

Однако проект не был закрыт. В 2020 году Sophos передала исходный код и товарный знак компании Aqua Security, которая продолжила развитие программы. Впоследствии права на Sandboxie перешли к израильской компании QNX Software Systems (подразделение BlackBerry), а затем к американской компании Google, которая в 2023 году приобрела активы, связанные с Sandboxie. Несмотря на смену владельцев, программа продолжает выпускать обновления, а её актуальные версии доступны для бесплатного скачивания на официальном сайте проекта.

Принцип работы

Sandboxie работает на уровне перехвата системных вызовов (API hooking). При запуске программы под управлением Sandboxie создается изолированное виртуальное окружение. Все операции, которые программа пытается выполнить с файлами, реестром, драйверами и другими компонентами системы, перехватываются драйвером Sandboxie.

Вместо реальной записи данных в системные папки или реестр, Sandboxie перенаправляет эти операции во временное хранилище (песочницу), расположенное в профиле пользователя. Таким образом, программа «думает», что она вносит изменения в систему, но на самом деле все её действия фиксируются в изолированной области. При закрытии песочницы все изменения либо удаляются безвозвратно, либо, по желанию пользователя, могут быть «зафиксированы» (committed) и перенесены в реальную систему.

Ключевым компонентом является драйвер ядра SbieDrv, который обеспечивает перехват операций на низком уровне. Пользовательский интерфейс (SbieCtrl) позволяет управлять песочницами, настраивать политики доступа и просматривать содержимое изолированных областей.

Основные возможности

  • Изоляция браузера: Запуск веб-браузеров в песочнице предотвращает заражение системы вредоносными скриптами и эксплойтами, а также блокирует нежелательные изменения домашней страницы и установку тулбаров.
  • Безопасное тестирование ПО: Позволяет устанавливать и запускать программы, в безопасности которых пользователь не уверен, без риска повреждения операционной системы.
  • Многократное использование: Поддерживается создание нескольких независимых песочниц, что позволяет использовать разные профили для разных задач (например, отдельная песочница для банковских операций и отдельная для посещения сомнительных сайтов).
  • Контроль доступа: Пользователь может настроить права доступа для каждой программы внутри песочницы, разрешая или запрещая ей доступ к определённым папкам, файлам или ключам реестра.
  • Быстрое восстановление: Поскольку все изменения хранятся во временной папке, очистка песочницы мгновенно возвращает систему в исходное состояние.
  • Запуск нескольких экземпляров: Позволяет запускать несколько копий одной и той же программы одновременно, изолированных друг от друга.

Ограничения и недостатки

Sandboxie не является полноценной виртуальной машиной и не обеспечивает полной изоляции на уровне ядра. Существуют техники «побега из песочницы» (sandbox escape), использующие уязвимости в самой программе или в драйверах. Известны случаи, когда вредоносное ПО детектировало наличие Sandboxie и отказывалось запускаться в ней, либо предпринимало попытки обойти защиту.

Программа не защищает от программ, работающих с прямым доступом к оборудованию или использующих уязвимости ядра Windows. Также Sandboxie неэффективна против руткитов, которые могут скрывать свою деятельность от перехвата API. Кроме того, изоляция приводит к снижению производительности, особенно при работе с ресурсоёмкими приложениями, из-за накладных расходов на перехват системных вызовов.

Программа работает только в операционных системах семейства Microsoft Windows (от Windows 7 до Windows 11). Для Linux и macOS существуют аналогичные решения, но официальная версия Sandboxie для них не выпускается.

Актуальное состояние

На сегодняшний день Sandboxie продолжает развиваться как бесплатный проект с открытым исходным кодом (исходный код был опубликован после передачи прав). Актуальная версия Sandboxie Plus предоставляет расширенный функционал по сравнению с классической версией Sandboxie Classic, включая улучшенный интерфейс, поддержку 64-разрядных систем и дополнительные инструменты для управления изоляцией. Несмотря на появление встроенных функций песочницы в Windows (Windows Sandbox) и развитие технологий виртуализации, Sandboxie остаётся востребованным инструментом благодаря своей лёгкости, быстроте и гибкости настройки, не требующей перезагрузки системы или выделения значительных аппаратных ресурсов.

Источники

  • Официальная документация и сайт проекта Sandboxie.
  • История развития проекта Sandboxie (Sophos, Invincea, Aqua Security).
  • Технические обзоры и статьи о механизмах изоляции приложений в Windows.
Загружаем BFOmetr…