Как запустить приложение в песочнице. Компьютерная песочница Sandboxie - защитит ваш ПК. Как убедиться, что скаченный файл в песочнице сохранен

Для Windows Phone 30.06.2020
Для Windows Phone

Наверняка хоть раз в жизни тебе приходилось иметь дело с не вызывающими доверия приложениями и скриптами, которые могли навредить системе. Или ты хотел запустить браузер в максимально изолированном окружении, чтобы в случае его взлома твоей системе ничто не угрожало. Сегодня подобные задачи принято решать с помощью вездесущего Docker, однако есть масса гораздо более простых и удобных инструментов для быстрого запуска приложений в песочницах.

Приложений для изолированного запуска программ песочницы

Задолго до того, как идея Docker зародилась в головах его создателей, появился проект LXC (LinuX Containers) . Он был основан на все тех же технологиях разделения пространств имен (Linux Namespaces) и точно так же позволял создать минималистичное замкнутое на себя окружение исполнения (песочницу, контейнер) для запуска сервисов или небезопасных приложений. Однако LXC не был столь дружелюбным к новым пользователям и не обладал фишками Docker вроде слоеной файловой системы, возможности быстро выкачать и запустить уже готовое приложение и конфигами для автоматической сборки окружений.

Намного раньше во FreeBSD появилась технология jail, позволяющая создавать песочницы, подобные chroot, но с акцентом на более глубокий уровень изоляции. Долгое время jail была гордостью FreeBSD и даже послужила прообразом для технологии Solaris Zones. Однако сегодня она уже не может обеспечить тот уровень гибкости и управления ресурсами, которые предлагают LXC и Docker, так что в целом jail оказалась на обочине истории. Сегодня песочницы в Linux можно создавать множеством разных способов. Это и уже упомянутые LXC и Docker с их пространствами имен, это механизм seccomp, используемый Chrome для изоляции вкладок и плагинов, это технологии SELinux/ AppArmor, позволяющие тонко регулировать доступ приложения к чему бы то ни было. В этой статье мы познакомимся с самыми удобными для обычного пользователя инструментами, которые лучше всего подходят для решения повседневных задач, таких как:

  • запуск не вызывающего доверия приложения, способного навредить системе;
  • изоляция браузера, email-клиента и других приложений, чтобы их взлом не привел к утечке данных;
  • запуск «одноразовых» приложений, которые не должны оставлять следов в системе.

Песочница MBOX

Начнем с одной из самых простых песочниц. Mbox - не совсем стандартный инструмент изоляции, он не урезает полномочия запущенного приложения, не выполняет виртуализацию сетевого стека и не имеет каких-либо настроек. Единственная задача Mbox - сделать так, чтобы приложение не смогло ничего записать в файловую систему. Для этого он создает специальную виртуальную ФС, на которую перенаправляет все запросы ввода/вывода. В результате под управлением Mbox приложение работает как ни в чем не бывало, однако в ходе его работы ты получаешь возможность применить или отвергнуть те или иные изменения виртуальной файловой системы к файловой системе реальной.

Лучше всего эту концепцию демонстрирует пример с официальной страницы Mbox:

$ mbox -wget google.com ... Network Summary: > -> 173.194.43.51:80 > Create socket(PF_INET,...) > -> a00::2607:f8b0:4006:803:0 ... Sandbox Root: > /tmp/sandbox-11275 > N:/tmp/index.html [c]ommit, [i]gnore, [d]iff, [l]ist, [s]hell, [q]uit ?>

В данном случае под управлением Mbox запускается Wget. Mbox заботливо сообщает нам, что Wget обращается к адресу 173.194.43.51 и порту 80, и записывает файл index.html, который мы можем применить к основной системе (для этого нужно нажать «c»), игнорировать (i), просмотреть diff, выполнить другие операции или вообще завершить приложение. Проверить, как это все работает, можно, просто установив уже готовый пакет Mbox. В Debian/Ubuntu это делается так:

$ wget http://pdos.csail.mit.edu/mbox/mbox-latest-amd64.deb $ sudo dpkg -i mbox-latest-amd64.deb

В Arch Linux Mbox доступен в AUR, поэтому установить его еще проще:

$ yaourt -S mbox-git

Это все. Теперь можно запускать любые бинарники, не беспокоясь, что они оставят в файловой системе бэкдор. В случае если приложению необходимо ограничить доступ к определенным частям файловой системы, можно использовать профили. Это обычные текстовые файлы, в которых перечислены разрешенные и запрещенные на доступ каталоги. Например, следующий профиль запретит приложению доступ к твоему домашнему каталогу (~), но оставит возможность работы с файлами текущего каталога (.):

Allow: . hide: ~

Чтобы запустить приложение с определенным профилем, достаточно указать его через опцию -p:

$ mbox -p profile.prof -wget google.com

Еще одна полезная опция - -n. Она полностью запрещает приложению доступ в интернет.

Изолируем запуск приложений при помощи FIREJAIL

Само собой разумеется, простой запрет на доступ к файлам - это слишком мало для создания по-настоящему изолированных песочниц. Вредоносный код или взломщик могут вообще ничего не прописывать в систему, а просто унести с собой твой Bitcoin-кошелек и базу паролей KeePass или использовать уязвимость приложения для получения прав root и выхода из песочницы. К тому же Mbox не дружит с графическим софтом и в целом не годится для запуска комплексных приложений, которые могут записывать на диск множество временных файлов и постоянно обновляют свои базы данных.

SANDBOX система изоляции приложений.

Если среди 95 профилей Firejail нет нужных тебе приложений, а идея писать профили самому не слишком тебя радует, то Sandbox - это твой выбор. Данный вид песочницы технически сильно отличается от двух уже описанных инструментов (он использует правила SELinux вместо seccomp и Namespaces), но в плане функциональности представляет собой нечто среднее.

Как и Mbox, Sandbox полностью отрезает приложение от внешнего мира, позволяя читать только stdin (то есть на вход запущенного в песочнице приложения можно передать данные другого приложения), а писать только в stdout (выводить данные на экран или перенаправлять другому приложению). Все остальное, включая доступ к файловой системе, сигналам, другим процессам и сети, запрещено. Простейший пример использования:

$ cat /etc/passwd | sandbox cut -d: -f1 > /tmp/users

Данная команда читает файл /etc/passwd, извлекает из него имена пользователей и записывает их в файл /tmp/users. Пользы от нее никакой, но она отлично демонстрирует принципы работы Sandbox. В песочнице запускается только команда cut, а сам файл /etc/passwd передается ей с помощью внешней команды. Вывод, с другой стороны, реализуется с помощью обычного перенаправления stdout.


Красота Sandbox в том, что с его помощью довольно легко расширить доступные приложению возможности. Например, ты можешь создать для него временные домашний каталог и каталог /tmp, передав команде всего один флаг:

$ sandbox -M mc

После завершения работы программы эти каталоги будут уничтожены, что весьма удобно при запуске не вызывающего доверия софта. Но что, если домашний каталог нужно сохранять между запусками (ну, допустим, для того, чтобы протестировать софт, работающий с множеством файлов)? Для этого достаточно создать каталог, который станет домашним для песочницы, и добавить еще одну опцию:

$ mkdir sandbox_home $ sandbox -M -H sandbox_home mc

Теперь у mc есть свой собственный домашний каталог, куда он может сохранять конфиги и откуда может читать файлы. Также Sandbox позволяет запускать графический софт (с помощью виртуального X-сервера Xephyr). Для этого достаточно передать еще один флаг:

$ sandbox -X -M -H sandbox_home gvim

Но и это еще не все. Sandbox имеет встроенные политики безопасности для запуска браузеров. Все, что нужно сделать, - выполнить такую команду:

Производительность приложения в Mbox в среднем на 12–13% ниже обычной

Запускаем Firefox в песочнице

Часть профиля firefox

$ sandbox -X -H sandbox_home -t sandbox_web_t firefox

Причем, как ты уже должен был понять, ты можешь использовать разные домашние каталоги для запуска разных сессий браузера или использовать «одноразовый» домашний каталог для походов по злачным местам. Еще один полезный флаг, о котором стоит упомянуть, - -w, с его помощью можно указать размер окна для графического софта. Он тебе определенно пригодится, так как динамически менять размер окна нельзя (это техническое ограничение Xephyr).

В целом Sandbox - очень удобный инструмент, единственная проблема которого - поддержка в дистрибутивах. Фактически прямо из коробки Sandbox работает только в Fedora, основанных на нем RHEL/CentOS и, возможно, в других дистрибутивах с активированным по умолчанию SELinux.

Сравнение песочниц ВЫВОДЫ

Запустить софт в песочнице довольно просто, и для этого можно использовать множество инструментов. В этой статье мы рассмотрели три из них.

  • Mbox отличается крайней простотой и идеален, когда необходимо контролировать то, к каким файлам приложение должно получить доступ.
  • Firejail подходит для создания сложных конфигураций и запуска почти сотни различных приложений, но не очень удобен, если нужного приложения нет в списке поддерживаемых.
  • Sandbox - прекрасный инструмент для запуска любых типов софта, но доступен только пользователям Fedora и основанных на нем дистрибутивов.

Какой из этих инструментов выбрать - решай сам. А в следующей статье мы окунемся с тобой в тонкости реализации песочниц и создадим ее собственными руками.

Так называемая песочница (англ. sandbox) – это относительно новая функция в условно-бесплатных пакетах антивируса Avast! Pro и Avast! Internet Security. Это особая модель безопасности, благодаря которой пользователь может посещать веб-сайты и запускать разнообразные приложения, находясь при этом в безопасной среде. Данная функция помогает избежать вирусов при случайном переходе на потенциально . При попадании на вредоносный ресурс браузер будет автоматически помещен в «песочницу», а посему заражение компьютера будет предотвращено.
В бесплатных версиях антивируса Avast! «песочница» отсутствует.

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

Как воспользоваться «песочницей»

Для того чтобы запустить сомнительное приложение или выйти в интернет через «песочницу», кликните на запросе «запустить виртуализированный процесс». После этого перейдите к нужной вам программе на компьютере. Браузер или приложение запустятся в новом специальном окне, обрамленном красной рамкой, указывающей на то, что программа успешно запущена из «песочницы».
Во вкладке «расширенные настройки» вы можете назначить приложения, которые не нужно виртуализировать, а также те, которые следует запускать из «песочницы» всегда.

Характерная особенность «песочницы» – возможность встраивания в контекстное меню. Чтобы подключить данную опцию, в окне «Параметры» установите флажок напротив графы «встроить в контекстное меню, запускаемое правым щелчком мыши». Опцию можно сделать доступной как для всех пользователей, так и для пользователей, обладающих правами администратора. С ее помощью вы сможете запускать любое приложение в «песочнице», всего лишь кликнув по ярлыку правой кнопкой мыши и выбрав команду «запустить с ».

Обратите внимание: если вы щелкнете правой кнопкой мыши по приложению, помещенному в «песочницу», в открывшемся контекстном меню вы можете выбрать команду однократного запуска вне «песочницы» либо удаления приложения из нее.

Можно бесконечно смотреть на огонь, воду и активность программ, изолированных в песочнице. Благодаря виртуализации ты одним кликом можешь отправить результаты этой деятельности - зачастую небезопасной - в небытие.

Впрочем, виртуализация применяется и в исследовательских целях: например, захотелось тебе проконтролировать воздействие свежескомпилированной программы на систему или запустить две разные версии приложения одновременно. Или создать автономное приложение, которое не будет оставлять следов в системе. Вариантов применения песочницы - множество. Не программа диктует свои условия в системе, а ты ей указываешь дорогу и распределяешь ресурсы.

Если тебя не устраивает медлительность процесса, с помощью тулзы ThinApp Converter ты можешь поставить виртуализацию на поток. Инсталляторы будут создаваться на основе указанного тобой конфига.

Вообще, разработчики советуют производить все указанные препарации в стерильных условиях, на свежей ОС, дабы все нюансы установки были учтены. Для этих целей можно использовать виртуальную машину, но, разумеется, это наложит свой отпечаток на скорость работы. VMware ThinApp и без того неслабо грузит системные ресурсы, причем не только в режиме сканирования. Однако, как говорится, медленно, но верно.

BufferZone

  • Сайт: www.trustware.com
  • Разработчик: Trustware
  • Лицензия: freeware

BufferZone контролирует интернет- и программную активность приложений с помощью виртуальной зоны, вплотную приближаясь к файрволам. Другими словами, здесь применяется виртуализация, регулируемая с помощью правил. BufferZone легко срабатывается в связке с браузерами, мессенджерами, почтовыми и P2P-клиентами.

На момент написания статьи разработчики предупреждали о возможных проблемах при работе с Windows 8. Программа способна убить систему, после чего ее придется удалять через безопасный режим. Виной тому драйверы BufferZone, которые вступают в нешуточный конфликт с ОС.

То, что попадает под радар BufferZone, можно отследить в главном разделе Summary. Число ограниченных приложений ты определяешь сам: для этого предназначен список Programs to run inside BufferZone. В него уже включены потенциально небезопасные приложения вроде браузеров и почтовых клиентов. Вокруг окна захваченного приложения появляется красная рамка, что придает уверенность при безопасном серфинге. Хочешь запустить вне зоны - без проблем, контроль можно обойти через контекстное меню.

Помимо виртуальной зоны, есть такое понятие, как зона приватная. В нее можно добавить сайты, на которых требуется соблюдать строжайшую конфиденциальность. Сразу нужно отметить, что функция работает только в Internet Explorer ретро-версий. В более современных браузерах имеются встроенные средства для обеспечения анонимности.

В разделе Policy настраивается политика по отношению к установщикам и обновлениям, а также программам, запущенным с устройств и сетевых источников. В Configurations также смотри дополнительные опции политики безопасности (Advanced Policy). Имеется шесть уровней контроля, в зависимости от чего меняется отношение BufferZone к программам: без защиты (1), автоматический (2) и полуавтоматический (3), уведомления о запуске всех (4) и неподписанных программ (5), максимальная защита (6).

Как видишь, ценность BufferZone состоит в тотальном интернет-контроле. Если тебе нужны более гибкие правила, то любой файрвол тебе в помощь. В BufferZone он также есть, но больше для галочки: позволяет блокировать приложения, сетевые адреса и порты. С практической точки зрения он малоудобен для активного обращения к настройкам.

Evalaze

  • Сайт: www.evalaze.de/en/evalaze-oxid/
  • Разработчик: Dögel GmbH
  • Лицензия: freeware / commercial (2142 евро)

Главная фишка Evalaze заключается в гибкости виртуализированных приложений: их можно запускать со сменных носителей или из сетевого окружения. Программа позволяет создавать полностью автономные дистрибутивы, функционирующие в эмулированной среде файловой системы и реестра.

Главная особенность Evalaze - это удобный мастер, который понятен без чтения мануала. Вначале ты делаешь образ ОС до установки программы, затем инсталлируешь ее, производишь тестовый запуск, настраиваешь. Далее, следуя мастеру Evalaze, анализируешь изменения. Очень напоминает принцип работы деинсталляторов (например, Soft Organizer).

Виртуализированные приложения могут работать в двух режимах: в первом случае операции записи перенаправляются в песочницу, во втором программа сможет записывать и читать файлы в реальной системе. Будет ли программа удалять следы своей деятельности или нет - решать тебе, опция Delete Old Sandbox Automatic к твоим услугам.

Множество интересных фич доступно только в коммерческой версии Evalaze. Среди них - редактирование элементов окружения (таких как файлы и ключи реестра), импорт проектов, настройка режима чтения. Однако лицензия стоит больше двух тысяч евро, что, согласись, несколько превышает психологический ценовой барьер. По аналогично неподъемной цене предлагается использование сервиса онлайн-виртуализации. В качестве утешения на сайте разработчика есть заготовленные виртуальные приложения-образцы .

Cameyo

  • Сайт: www.cameyo.com
  • Разработчик: Cameyo
  • Лицензия: freeware

Беглый осмотр Cameyo наводит на мысль, что функции аналогичны Evalaze и ты в три клика можешь «слепить» дистрибутив с виртуализированным приложением. Упаковщик делает снимок системы, сравнивает его с изменениями после установки софта и создает экосистему для запуска.

Важнейшее отличие от Evalaze состоит в том, что программа полностью бесплатна и не блокирует ни одной опции. Настройки удобно сосредоточены: переключение способа виртуализации с сохранением на диск или в память, выбор режима изоляции: сохранение документов в указанные директории, запрет на запись или полный доступ. Вдобавок к этому можешь настроить виртуальную среду с помощью редактора файлов и ключей реестра. Каждая папка также имеет один из трех уровней изоляции, который легко переопределить.

Ты можешь указать режим очистки песочницы после выхода из автономного приложения: удаление следов, без очистки и запись изменений реестра в файл. Доступна также интеграция с проводником и возможность привязки к конкретным типам файлов в системе, чего нет даже в платных аналогах Cameyo.

Однако самое интересное - это не локальная часть Cameyo, а онлайн-упаковщик ипубличные виртуальные приложения . Достаточно указать URL или закинуть MSI или EXE-инсталлятор на сервер, указав разрядность системы, - и на выходе получаешь автономный пакет. С этого момента он доступен под крышей твоего облака.

Резюме

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

Не имеет каких-то уникальных функций, но зато очень проста и безотказна. Любопытный факт: статья писалась внутри этой «песочницы», и по досадной ошибке все изменения ушли в «тень» (читай: астрал). Если бы не Dropbox, на этой странице был бы опубликован совсем другой текст - скорее всего, другого автора.

Evalaze предлагает не комплексный подход виртуализации, а индивидуальный: ты контролируешь запуск конкретного приложения, создав для этого искусственные условия обитания. Здесь есть свои достоинства и недостатки. Впрочем, с учетом урезанности бесплатной версии Evalaze, и достоинства померкнут в твоих глазах.

Cameyo несет в себе некоторый «облачный» привкус: приложение можно скачать с сайта, закинуть на флешку или в Dropbox - это во многих случаях удобно. Правда, наводит на ассоциации с фастфудом: за качество и соответствие содержания описанию ручаться не приходится.

А вот если ты предпочитаешь готовить по рецепту, VMware ThinApp - твой вариант. Это решение для экспертов, которым важен каждый нюанс. Набор уникальных функций дополняется возможностями консоли. Ты можешь конвертировать приложения из командной строки, используя конфиги, сценарии - в индивидуальном и пакетном режиме.

BufferZone представляет собой песочницу с функцией файрвола. Этот гибрид далек от совершенства и актуальности настроек, но для контроля интернет-активности и приложений, защиты от вирусов и прочих угроз BufferZone использовать можно.

Некоторым пользователям порой приходится иметь дело с софтом сомнительного происхождения – например, в целях тестирования. Лучшим вариантом в таких случаях будет завести отдельный компьютер или виртуальную машину для этого, однако подобное не всегда возможно. Но решение есть — нужно просто воспользоваться программой-«песочницей», к числу которых относится и Sandboxie.

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

Запуск веб-браузера

Основная причина, по которой пользователей интересует подобный Сэндбокси софт – безопасная работа в интернете. Рассматриваемая программа позволяет достичь этой цели.

Запуск программ

Следующий сценарий использования среды «песочницы» – запуск софта.

Работа с файлами

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

Управление средой

Разработчики предоставили пользователями также и инструменты управления средой, в которой запускаются программы и открываются файлы. Они имеют очевидное название «Управление Sandboxie» .


Установка параметров Sandboxie

Песочницу можно настроить «под себя» для более комфортного использования.


Решения некоторых проблем

Увы, но порой при использовании «песочницы» возникают неполадки. Рассмотрим наиболее частые, и подскажем варианты их устранения.

Ошибка «SBIE2204 Cannot start sandboxed service RpcSs»
Подобная проблема характерна для версий Sandboxie 5.0 и старше, которые установлены на Windows 10. Причина – несовместимость среды с возможностями этой операционной системы, поэтому единственное решение заключается в установке актуальных обновлений программы.

Ошибка «SBIE2310 Буфер имени достиг переполнения»
Эта проблема тоже касается несовместимости, но на этот раз с какой-то конкретной программой. Чаще всего виновниками выступают антивирусы с возможностями «песочницы» или аналогичное ПО. Метод устранения ошибки тоже очевиден – отключить либо деинсталлировать приложение, которое конфликтует с Sandboxie.

Ошибка «SBIE2211 Sandboxed service failed to start: *имя приложения или файла*»
Такой сбой чаще всего возникает у пользователей Windows 7. Проблема заключается в системе User Account Control, которая мешает работе либо установке файла, требующего администраторских полномочий для запуска. Решение простое – в окне выбора «песочницы» при открытии такого ПО или документа отметьте опцию «Запустить как UAC Administrator» .

Заключение

На этом наше руководство по использованию программы Sandboxie подходит к концу. Напоследок напоминаем – среда-«песочница» не панацея в отношении компьютерной безопасности, поэтому если приходится иметь дело с подозрительным софтом, лучше использовать виртуальную машину.

Всем привет, сегодня хочу рассказать о очень полезной в нынешнее время программе - Sandboxie. Sandboxie это компьютерная песочница которая позволяет обезопасить ваш компьютер от заражения вирусами и предоставить спокойный серфинг интернета. У программы есть еще несколько полезных возможностей о которых расскажу позже.

Как работает программа Sandboxie?

Все очень просто, программа создает выделенную среду внутри Windows, предназначенную для безопасного запуска приложений на ПК, а также блокируют доступ вредоносам к системе. Некоторые антивирусы имеют подобные функции, например, TS 360, Comodo Internet Security, и Avast! Pro. Песочница на данный момент является одним из самых лучших инструментов для борьбы с вирусами.

Запуская любую программу в режиме песочницы вы локализуете все возможности программы в песочнице, программа или вирус не может никак воздействовать на вашу ОС. Таким образом в песочнице вы можете запускать и проверять что угодно без вреда для ОС. Если запустить браузер в песочнице, можно серфить интернет без риска заразить браузер или компьютер.

Основные направления использования песочницы Sandboxie, это:

  • Проверка опасных и незнакомых программ
  • Отслеживание действий программ
  • Безопасный серфинг интернета

Подробнее о возможностях песочницы смотрите в моем видео обзоре:


Что еще может Sandboxie?

Еще программа может запускать несколько окон программы, например, можно запустить 2 или более окна скайпа, в обычном режиме можно запустить только одно окно программы. Некоторые через песочницу запускают несколько окон онлайн игр).

Также программа позволяет вечно пользоваться триальными программами. Например можно использовать любую программу у которой есть ограниченный срок на бесплатное использование. каждый раз запуская программу в песочнице можно получить сброс триала программы).

Если вам известны и другие методы использования песочницы, напишите о этом в комментариях и я добавлю эту информацию в основную статью.



Рекомендуем почитать

Наверх