Sandboxie не может вызвать программную системную ошибку с кодом 5

Обновлено: 20.11.2024

Песочница – это выделение программы на жестком диске таким образом, чтобы свести к минимуму или исключить ее воздействие на остальные ваши приложения и критически важные системы. Это достигается с помощью инструментов песочницы, которые по идее работают так же, как настоящая песочница. Любой, кто когда-либо был на пляже, знает, что песок попадает везде. И в Microsoft Windows это относится ко многим программам и приложениям, которые будут писать и взаимодействовать с несколькими частями вашей операционной системы, включая ваше статическое хранилище, системная память и процессор. Все это взаимодействие может «загрязнить» вашу систему, вызывая конфликты. А когда задействовано вредоносное ПО, это может привести к катастрофе.

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

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

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

Песочница браузера

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

  • Google Chrome был изолирован с самого начала.
  • Opera находится в изолированной программной среде, поскольку она основана на коде Google Chromium.
  • В Mozilla Firefox реализована выборочная песочница.
  • В 2006 году в Internet Explorer появилась некоторая степень изолированности с помощью IE 7.
  • Microsoft Edge теперь изолирует все процессы в песочнице
  • Браузер Safari от Apple запускает веб-сайты в отдельных процессах.

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

Ручная песочница

Хотя браузеры являются очень важным недостатком любой операционной системы, они ни в коем случае не являются единственным недостатком. Любое приложение потенциально может быть вредоносным, поэтому безопасность любого компьютера можно усилить с помощью песочницы. Ручная песочница — это процесс преднамеренной настройки вашей системы для изолирования приложения, которое в противном случае могло бы иметь полный доступ к вашей системе.

Виртуальные машины

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

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

Если какая-то вредоносная программа проникнет в вашу систему и заразит ее, она сможет заразить только виртуальную машину, что ограничивает размер вреда, который она может нанести. Можно даже запускать альтернативные операционные системы на виртуальной машине, например, запускать дистрибутив Linux на виртуальной машине на ПК с Windows.

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

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

Виртуальная коробка

VirtualBox принадлежит Oracle и имеет клиентов для всех основных операционных систем.После установки VirtualBox вы можете создать виртуальную машину с помощью кнопки «Создать». Вам нужно будет предоставить установочный носитель операционной системы, потому что VirtualBox не поставляется с ним. Дистрибутивы Linux легко найти в Интернете. Хорошим списком является дистрибутив на веб-сайте, а для проприетарных операционных систем, таких как Windows, вам понадобится установочный компакт-диск.

Параллели

Parallels очень похож на VirtualBox, за исключением того, что он работает только на macOS и специально создан для запуска Windows на виртуальной машине. Если вы ищете эту комбинацию — запуск Windows на рабочем столе macOS — тогда Parallels может быть лучшим решением для вас. Параллели не бесплатны. Однако есть 30-дневная бесплатная пробная версия.

Заморозка времени в ToolWiz

С точки зрения простоты, ToolWiz Time Freeze — это удобный вариант для тех, кто не хочет возиться с настройками.

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

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

Операционная система Qubes

QubesOS (произносится как «Cubes») заслуживает особого упоминания за виртуализацию. Qubes использует гипервизор Xen вместо VirtualBox. Он запускает несколько гостевых операционных систем, каждая из которых отделена от другой. Это позволяет помещать в песочницу отдельные приложения, каждое из которых находится на собственной виртуальной машине, а не просто помещать в песочницу всю гостевую операционную систему.

Отличительное отличие QubesOS состоит в том, что Xen — это собственная операционная система; под ним не работает «хостовая» операционная система. Подробнее о Qubes и других ориентированных на анонимность дистрибутивах Linux я писал здесь.

Песочница

По состоянию на июнь 2020 года Sandboxie больше не поддерживается его создателем. Вы по-прежнему можете загружать/устанавливать версии программы, но мы рекомендуем делать это с осторожностью. Неподдерживаемые приложения особенно уязвимы для атак. Из-за популярности программы Sophos выложила исходный код приложения на Github.

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

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

Sandboxie предназначена для домашних пользователей, что находит отражение в ее невысокой цене.

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

Типы проблем, которые могут вызывать программы, не находящиеся в тестовой среде

Программы, которые не запускаются в изолированной программной среде, могут нанести ущерб вашей системе. Вот несколько проблем, которые они могут вызвать.

Программы зависают друг с другом

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

Запуск программы в изолированной программной среде позволяет системе заранее распределять ресурсы, такие как память и дисковое пространство, до того, как программа запросит что-либо. Это гарантирует, что эти ресурсы будут готовы для программы, когда они ей понадобятся, а также гарантирует, что никакие другие программы не смогут использовать эти ресурсы.

Программы с разными зависимостями

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

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

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

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

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

Например, если моей программе Puppy Vet Tracker требуется версия 2.0 какой-либо зависимой программы, а моей программе Daily Star Wars Quote требуется версия 1.0 той же зависимой программы, то невозможно выполнить это требование для обеих программ.

Разработчики часто сталкиваются с проблемами такого типа, и песочница – один из способов их решения. Создание песочницы и установка в нее моего Puppy Vet Tracker позволит обновить зависимую программу до версии 2.0. Основная компьютерная система останется с версией 1 зависимой программы, и поэтому я все еще могу получать свою ежедневную цитату из «Звездных войн». Беспроигрышный вариант.

Вредоносные программы

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

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

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

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

При этом хакеры прилагают очень согласованные усилия для проникновения в песочницы и выхода из них. Это называется выходом из виртуальной среды и считается настолько серьезным типом атаки, что Microsoft недавно выплатила вознаграждение в размере 105 000 долларов команде белых хакеров, которая продемонстрировала, что это возможно с помощью браузера Edge.

Участник сообщества OLLI_S

У меня был установлен 1Password 4.6.0.604 (последняя стабильная версия).
После установки я открыл Firefox вне песочницы и установил браузерное расширение 1Password.
Затем я щелкнул значок 1Password в Firefox и настроил 1Password для Firefox (подключение).
Теперь я могу щелкнуть значок 1Password в Firefox и нормально использовать 1Password.

Когда я запускаю Firefox в изолированном режиме и нажимаю значок 1Password в Firefox, это также работает.
У меня есть полный доступ к моему хранилищу 1Password.
Помните, я все еще использовал 4.6.0.604 (последняя стабильная версия).

Затем я зашел в настройки 1Password и проверил наличие бета-обновлений.
Теперь установлена ​​версия 1Password 4.6.0 Beta 613.

Мне также нужно снова выбрать приложение 1Password.
В Sandboxie все окна в песочнице имеют желтую рамку, поэтому вы сразу видите, что это окно, в котором я должен выбрать 1Password, отображается внутри песочницы:

Затем 1Password запускается во второй раз, и здесь я вижу экран приветствия (где я могу создать новое хранилище или открыть существующее хранилище).

Чтобы проверить это еще раз, я удалил 1Password 4.6.0 Beta 613 и установил 1Password 4.6.0.604 (последняя стабильная версия).
Здесь я запустил Firefox в обычном режиме (не в песочнице) и настроил подключение к 1Password.
Все работает.
Но и когда я запускаю Firefox в изолированном режиме, все работает!

Поэтому я не могу использовать Sandboxie с 1Password 4.6.0 Beta 613, но с 1Password 4.6.0.604 (последняя стабильная версия) он работает.
Не могли бы вы взглянуть на эту проблему?

Версия 1Password: 4.6.0 Beta 613
Версия расширения: не указана
Версия ОС: не указана
Тип синхронизации: не указан

Комментарии

@OLLI_S: Я подозреваю, что это может быть связано с некоторыми улучшениями, которые мы внесли в недавние бета-версии, чтобы усилить безопасность между 1Password и расширениями браузера, поэтому я не ожидаю, что мы отменим эти изменения. Однако я могу ошибаться, если это связано с чем-то совершенно другим. Можете ли вы сказать мне точные версии ОС и песочницы, которые вы используете, чтобы я мог проверить это? Заранее спасибо! :)

Участник сообщества OLLI_S

@OLLI_S: Спасибо! Я проверил это, пройдя через несколько бета-версий 1Password 4, и обнаружил, что браузерное расширение 1Password по-прежнему работает с песочницей Firefox в каждой из них. Однако это не работает сразу, потому что расширение в песочнице Firefox должно сначала запустить помощник (Agile1PAgent.exe). В противном случае 1Password не сможет взаимодействовать с браузером.

Итак, сначала, когда вы нажмете кнопку расширения, вы получите ошибку подключения (поскольку Помощник еще не запущен в песочнице с Firefox). Точно так же Firefox не может подключиться, если он был запущен без запущенного помощника. Так что вам действительно нужны оба в вашей песочнице. После запуска Firefox с уже работающим Помощником в песочнице повторный щелчок вызывает запрос на разблокировку, потому что они могут взаимодействовать.

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

Участник сообщества OLLI_S

@brenty У меня большая проблема!
Сегодня я обновил 1Password до 4.6.1.616, а также расширение браузера Firefox.
Старая версия 1Password (4.6.0.604) работала с песочницей Firefox, а текущая стабильная версия — нет.
Когда я запускаю Firefox вне песочницы, он работает.

Поведение точно такое, как вы описали выше.
И я также знаю, что мне нужно запустить оба приложения в Sandboxie.
Но запуск 1Password в песочнице не работает, здесь я получаю следующее сообщение об ошибке от Sandboxie:
Служба SBIE2205 не реализована: CreateDesktop

Проблема заключается в том, что когда я запускаю 1Password в изолированной программной среде, все изменения, внесенные в мое хранилище паролей, также помещаются в изолированную программную среду (и не записываются на мой жесткий диск).Здесь я должен не забыть переместить файлы из песочницы на мой жесткий диск.
Очень высокий риск потери данных.

Итак, @brenty, у тебя есть какое-нибудь решение для меня?
Тем временем я удалю 1Password 4.6.0.604 и вернусь к 4.6.1.616, где все работало.

@OLLI_S: Прошу прощения за путаницу! Недавно мы добавили взаимную аутентификацию в соединение 1Password с расширениями браузера. Вы можете найти более подробное обсуждение здесь.

Похоже, теперь Sandboxie может разрешать такие безопасные соединения, но мы не собираемся отменять это изменение. Можно ли установить исключение для 1Password? Если нет, и если вы являетесь единственным пользователем своего компьютера (без других локальных или удаленных входов в систему), вы можете безопасно использовать предыдущую версию приложения.

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

Участник сообщества OLLI_S

Но это может быть только временное решение
Вы должны найти решение этой проблемы в 1Password 6.
Я думаю, что Sandboxie используется многими пользователями, на форумах около 25000 пользователей.
Несмотря на то, что у меня есть Internet Security Suite, я всегда запускаю все свои веб-браузеры в изолированной программной среде, поэтому никакое вредоносное программное обеспечение не может повлиять на мою систему (существует множество инфекций, передаваемых через диск).
Если 1Password не работает с Sandboxie, мне действительно нужно подумать, хочу ли я пропустить свой защитный экран (Sandboxie) или вернуться к своему старому менеджеру паролей.
Мне очень нравится 1Password, но безопасность также очень важна.

Если 1Password не работает с Sandboxie, мне действительно нужно подумать, хочу ли я пропустить свой защитный экран (Sandboxie) или вернуться к своему старому менеджеру паролей. Я очень люблю 1Password, но безопасность также очень важна.

@OLLI_S: Я полностью согласен с тем, что безопасность важна. Нас бы здесь не было, если бы мы не верили в это. Но я не согласен с тем, что вам нужно выбирать между 1Password и безопасностью. Возвращаясь к моим предыдущим комментариям, мы разрабатываем 1Password так, чтобы он был безопасным сам по себе; так что, хотя Sandboxie — удобный инструмент и почти наверняка важный во многих случаях, он вам не нужен для безопасного использования 1Password — особенно с учетом взаимной аутентификации, которую мы выполняем с расширениями браузера (именно поэтому у нас есть этот разговор сейчас).

«Список совместимости» интересен, но я должен быть честным: пока что вы единственный, кто поднял этот вопрос, поэтому я не уверен, что имеет смысл заниматься этим сейчас. Мы должны расставить приоритеты в работе, которую мы делаем, чтобы принести наибольшую пользу большинству пользователей. Но, безусловно, если это станет популярным запросом и мы сможем сделать это без ущерба для безопасности 1Password (опять же, взаимная аутентификация) или удобства использования, мы, безусловно, рассмотрим это.

Я думаю, моя точка зрения заключается в том, что мы не можем рассчитывать или ожидать, что все пользователи 1Password будут использовать Sandboxie, поэтому нам нужно продолжать улучшать 1Password, чтобы обеспечить его безопасность для всех пользователей и избежать зависимости. Приносим извинения за неудобства, вызванные нашими улучшениями безопасности браузера, но мы не можем идти на компромисс. Это то, чего мы ожидаем от себя и своих продуктов, и все наши клиенты заслуживают не меньшего.

Участник сообщества OLLI_S

@brenty: как насчет переноса этой темы на обычные форумы Windows, потому что проблема возникает и с текущей стабильной версией. И не могли бы вы изменить заголовок с «1Password 4.6.0 Beta 613 — Проблемы с Sandboxie» на «Проблемы с Sandboxie»? Может быть, у некоторых других пользователей также есть Sandboxie?
Спасибо!

Далее вы должны понять, что у меня на уме.
Мне очень нравится 1Password, и вы видите это в огромном количестве предложений, которые я сделал. Это действительно мощный менеджер паролей, который намного лучше, чем мой текущий менеджер паролей KeePass. 1Password также повышает безопасность по сравнению с KeePass (Watchtower, показывает слабые и повторяющиеся пароли).
И мне очень нравится превосходная поддержка, которую я здесь получаю (особенно от вас, @brenty, но также и от всех остальных).
Поэтому нет сомнений, что я люблю 1Password и хочу остаться в 1Password.< /p>

Но я кое-что знаю об ИТ-безопасности, а также о существующих опасностях.
Я знаю, что вы можете заразиться, просто введя неправильный URL-адрес или нажав неправильную ссылку в результатах поиска. В наши дни достаточно открыть веб-страницу, чтобы заразиться, вам даже не нужно ничего нажимать.Я помню отчет о том, что вредоносное ПО было доставлено по рекламе (рекламодатель был взломан). И я знаю, что антивирусный сканер не может защитить вас полностью.

Я понимаю, что у приложений есть проблемы с доступом к изолированным приложениям и взаимодействием с ними, но, к счастью, 1Password работал с Sandboxie. Поэтому я вручную добавил 55 паролей из KeePass, а также изменил пароли в веб-сервисе (поэтому дата, когда я последний раз менял пароль, верна, и Сторожевая башня может предупредить меня).

Теперь вы что-то изменили, и 1Password больше не работает с Sandboxie. Ваши изменения должны повысить уровень безопасности, поэтому я понимаю, что вы не отмените эти изменения. И я также думаю, что у вас будет эта функция в 1Password 6.
Так что и в 1Password 6 у меня будут эти проблемы.

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

Итак, что мне теперь делать?

  • Плакать? Я уже делаю это! :'(
  • Использовать Firefox без Sandboxie? Сделает мою систему менее безопасной!
  • Используете другой браузер с включенной песочницей? Edge работает над такой функцией, и я не знаю о функциях песочницы в других браузерах (я не использую Chrome). Но если песочница в браузерах работает, почему до сих пор так много заражений с диска?
  • Вернуться к KeePass? Не совсем вариант, я люблю 1Password!

Было бы идеально, если бы вы и ваша команда могли исследовать это и предложить любое решение здесь.
Спасибо!

как насчет переноса этой темы на обычные форумы Windows, потому что проблема возникает и с текущей стабильной версией. И не могли бы вы изменить заголовок с «1Password 4.6.0 Beta 613 — Проблемы с Sandboxie» на «Проблемы с Sandboxie»? Может быть, у некоторых других пользователей также есть Sandboxie? Спасибо!

@OLLI_S: Отличное предложение! В конце концов, бета стала стабильной. Сделанный. :)

Мне очень жаль, что это вызвало у вас разочарование. Как вы понимаете, мы не тестируем неподдерживаемые настройки — Sandboxie, WINE и т. д. — при внесении изменений, особенно важных, таких как взаимная аутентификация. Наш главный приоритет — сделать 1Password безопасным и удобным для обычного пользователя. Но так же, как мы внесли некоторые изменения в прошлом для пользователей Linux, если мы сможем найти способ позволить вам использовать его с Sandboxie, не делая 1Password менее безопасным или удобным в использовании в целом, мы это сделаем. Я просто не могу гарантировать, что это вообще возможно или вероятно в настоящее время, поскольку у нас ограниченные ресурсы, и у нас есть много работы над 1Password в целом. :румянец:

Sandboxie — увлекательный инструмент, но я не согласен с тем, что он необходим для обеспечения безопасности в Интернете. Если это так, то да поможет нам всем Бог, потому что это говорит о том, что у обычного человека нет надежды на безопасное использование Интернета. В тот день, когда я приму это как факт, я построю свою уединенную хижину в лесу. :р

Тем не менее, я думаю, что нашел решение. Я смог заставить его работать, предоставив C:\Program Files (x86)\1Password 4\Agile1PAgent.exe доступ к файлу %LocalAppData%\AgileBits\OPX4.auth . Вы можете сделать это в режиме только для чтения, если сначала завершите аутентификацию в Firefox вне Sandboxie. В противном случае 1Password потребуется доступ на чтение/запись для создания файла. Вы также можете поэкспериментировать с прямым доступом, если предпочитаете выполнять аутентификацию заново при каждом запуске, но для меня это слишком далеко. :лол:

Мы не делаем здесь ничего безумного или мистического, поэтому вы должны предоставить 1Password возможность подключения к браузеру, даже если мы внесем дальнейшие изменения. Но, в конечном счете, настройки Sandboxie ( :scream: ) не входят в нашу компетенцию, поэтому вам придется это сделать. Во всяком случае, я надеюсь, что это поможет. ;)

App Sandbox – это технология управления доступом в macOS, предназначенная для предотвращения повреждения системы и пользовательских данных в случае взлома приложения.

Публикации под тегом App Sandbox

яблоко "спросить разрешение" в песочнице

Я пытаюсь протестировать встроенные покупки, добавив свой тестовый адрес электронной почты в раздел «Тестеры» в консоли разработчика. Когда я использую любое из добавленных туда электронных писем песочницы, я получаю следующее сообщение: Запросить разрешение Запрос на покупку ____ будет отправлен вашему родителю или опекуну [Среда: песочница], если я нажму «Спросить», ничего не произойдет. Я еще раз проверил, что это электронное письмо не является детской учетной записью. у него дата рождения 1980. Фактически, он не зарегистрирован ни в одной программе семейного обмена. Я протестировал несколько учетных записей после добавления их в песочницу. Такая же проблема возникает на всех аккаунтах.Одна из этих учетных записей: testkinderpass123@gmail.com. Я также пытался добавить эти учетные записи в план семейного доступа, чтобы даже в случае отправки родительского запроса я мог принять его с другого устройства. К сожалению, при этом стали появляться всплывающие сообщения об ошибках "Попробуйте еще раз".

Просмотр отчетов о нарушениях тестовой среды

Наилучший способ просмотра отчетов о нарушениях тестовой среды с годами изменился, поэтому я решил опубликовать актуальную информацию. Я протестировал следующее с Xcode 13.3 на macOS 12.2. Делитесь и наслаждайтесь — Куинн «Эскимос!» @ Техническая поддержка разработчиков @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com" Просмотр отчетов о нарушениях тестовой среды После включения тестовой среды приложения вы можете обнаружить, что ваше приложение дает сбой каким-то неочевидным образом. То есть что-то в вашем приложении не работает, но ваше приложение не отображает ошибку разрешений, и поэтому вы не знаете, с чего начать. Если вы окажетесь в такой ситуации, найдите отчет о нарушении песочницы: Запустите консольное приложение. Для каждой строки ниже скопируйте строку и вставьте ее в поле поиска в правом верхнем углу. тип: ошибка подсистема: com.apple.sandbox.reporting категория: нарушение Это ищет отчеты о нарушениях песочницы. Примечание. Точные условия запроса со временем менялись. Вышеприведенное верно для macOS 12.2. Нажмите кнопку «Сохранить» на панели под окном поиска и введите имя для сохраненного поиска. Я обычно использую для этого «Песочницу». В будущем щелкните этот сохраненный поиск, чтобы пропустить предыдущий шаг. Нажмите «Начать трансляцию». Запустите приложение и воспроизведите проблему. Найдите отчет о нарушении песочницы в журнале. Если вы его видите, выполните следующие действия для расследования. Внутри отчета о нарушении песочницы Запись журнала отчета о нарушении песочницы выглядит следующим образом: тип: время ошибки: 11:58:26.009175+0000 процесс: подсистема sandboxd: com.apple.sandbox.reporting категория: сообщение о нарушении: песочница: AppSandboxViolat(5807) deny(1) file-read-data /Users/quinn/.ssh/id_rsa Сообщение включает в себя полный отчет о нарушении песочницы. Он слишком большой, чтобы включать его сюда, поэтому я добавил его в виде текстового вложения. sandbox-violation-report.txt Сначала посмотрите на поле Violation: Violation: deny(1) file-read-data /Users/quinn/.ssh/id_rsa Это означает, что песочница приложения заблокировала попытку чтения данных файла по пути /Users/quinn/.ssh/id_rsa. Затем посмотрите на обратные дорожки потока. Обычно довольно легко определить поток, ответственный за нарушение: это тот поток, который заблокирован в системном вызове, который может обоснованно вызвать это нарушение. Например: Thread 0 (id: 291952): 0 libsystem_kernel.dylib … __open + 10 1 Foundation … _NSReadBytesFromFileWithExtendedAttributes + 167 2 Foundation … -[NSData(NSData) initWithContentsOfFile:options:maxLength:error:] + 119 3 libswiftFoundation.dylib … NSData.__allocating_init(contentsOf:options:) + 77 4 libswiftFoundation.dylib … Data.init(contentsOf:options:) + 76 5 AppSandboxViolator … ViewController.violateAction(_:) + 1507 (ViewController.swift:25) 6 AppSandboxViolator … @ objc ViewController.violateAction(_:) + 65 ( :0) 7 AppKit … -[NSApplication(NSResponder) sendAction:to:from:] + 288 … Здесь вы видите, что AppKit вызвал метод ViewController.violateAction(_:) ( кадр 6), который попытался создать значение данных из содержимого файла (кадр 5), который в конечном итоге вызвал открытие (кадр 0), что и вызвало нарушение. Используя эту информацию, изучите и устраните несовместимость песочницы. Нет отчета о нарушении песочницы Возможно, вы не увидите отчет о нарушении песочницы, даже если проблема вызвана песочницей приложения. Например, представьте, что у вас есть такой код: let url: URL = … какой-то URL-адрес файла … let data: Data if access(url.path, R_OK) == 0 < data = try Data(contentsOf: url) >else < data = Data() >Системный вызов доступа никогда не инициирует отчет о нарушении песочницы. Если песочница приложения блокирует доступ к URL-адресу, этот код не сработает, не сгенерирует отчет о нарушении песочницы и не установит для данных пустые значения. ВАЖНО. Вызовы файловой системы перед проверкой являются пикантными и, в худшем случае, могут привести к уязвимостям TOCTTOU. Избегайте написания такого кода. Отладка таких проблем может быть сложной задачей.

Доступ к файлам Final Cut Pro через расширение

Здравствуйте, я разрабатываю расширение рабочего процесса Final Cut Pro. Я хочу загрузить видео Final Cut Pro с расширением. Насколько я понимаю, и приложение macOS, и расширение находятся в песочнице, и у пользователя нет прямого доступа к папкам Final Cut Pro. Здесь описан способ получения мультимедиа через пользовательское место назначения общего доступа. До сих пор мне удавалось анализировать XML, описывающий видео, после перетаскивания видео из FCP и добавления его в расширение. У меня есть URL-адрес видео, но нет доступа к нему - разрешения запрещены. Могу ли я программно получить доступ к рассматриваемой папке/файлу? Или разрешить пользователю доступ в начале и использовать его позже? Или я должен использовать для этой цели настраиваемое общее место назначения? Заранее спасибо!

Не удается загрузить файл в поставщике файлов из-за системной ошибки.

Теперь я создал расширение с помощью шаблона поставщика файлов и использую протоколы поставщика файлов. Но когда я загружаю файл, система выдает ошибку: «Не удалось связаться с вспомогательным приложением». Из системного журнала я вижу, что выборка содержимого завершилась с ошибкой: ┳139b4 ‼️ выполнение завершено > Будем признательны за любые советы, спасибо!

Песочница: ExternalQuickLoo(1253) deny(1) network-outbound*:42222

У меня есть приложение с встроенным генератором кратких обзоров. Приложение открывает порт 42222 для запросов localhost. Генератору просмотра не удается подключиться к сокету. В журнале показаны эти 2 ошибки песочницы: Песочница: 1 дублированный отчет для java deny(1) file-read-data /private/etc/hosts Песочница: ExternalQuickLoo(1253) deny(1) network-outbound*:42222 . что странно, потому что приложение не изолировано: % codesign -d --entitlements :- /Applications/Test.app Executable=/Applications/Test.app/Contents/MacOS/Test Тот же код работает правильно при выполнении из отдельного приложение, работающее на той же машине (а не на генераторе). Любая идея, почему генератор быстрого просмотра не может подключиться к сокету локального хоста? . или почему правила тестовой среды применяются к приложению, не входящему в тестовую среду?

Как выйти из песочницы при выполнении интеграционного тестирования?

Я выполняю некоторые тесты, включающие расширение приложения и внешнее приложение, подключенное через XPC. Я получаю следующее, когда пытаюсь подключиться к внешнему приложению из расширения приложения Safari с включенным подключением песочницы к службе с именем «com.test. образец "был признан недействительным: сбой при поиске с ошибкой 159 - ограничение песочницы". UserInfo=

сбой привязки сокета() в приложении какао, но не в инструменте командной строки

Вызов bind() не работает в моем проекте приложения Cocoa, но не в проекте инструмента командной строки (с точно таким же сетевым кодом). Нет песочницы Catalina (с отключенным SIP, но решение должно работать на машинах с включенным SIP) Настройки транспорта приложений широко открыты (это настройка только для клиента, хотя AFAIK) sandboxd говорит «deny (1) network-bind *: 32323» Когда я копирую код в проект командной строки, он работает. 1. Если приложение не находится в песочнице, почему в журнале появляется ошибка песочницы? 2. Есть ли что-то еще, что мне нужно добавить в Info.plist для привязки к сетевому порту (и другим связанным функциям сервера) из приложения Cocoa?

Расширение поставщика файлов и флаг карантина

Есть ли способ отключить песочницу/нотариальное заверение/совместное проектирование в существующем приложении? (уже построен)

Сумасшедший вопрос, но он поступил от друга, который сейчас работает в другой компании, и я хотел убедиться, что не говорю ему не то, что нужно. Я сказал «нет», но я не уверен на 100%, и я не могу найти ничего об этом в Интернете. Он хочет взять свою собственную сборку в песочнице и отключить в ней песочницу/нотариальное заверение/совместное проектирование (ПОСТФАКТИЧНО) для тестирования какой-то проблемы, над которой он работает. Я полчаса разговаривал по телефону, пытаясь понять почему, но так и не понял. Сумасшедший или нет, но это интересный вопрос, поэтому я решил задать его здесь.

Полный доступ к диску в ОС Monterey

Здравствуйте, парень, мне нужна помощь, я разработал приложение на Java. Я хочу дать разрешение на полный доступ к диску с помощью функции перетаскивания. Я вижу какое-то приложение, использующее эту функцию. Я также хочу знать об этой функции. Может ли кто-нибудь помочь мне в этом? См. изображение для справки. Спасибо.

Ваше приложение использует общедоступные API несанкционированным образом

Привет! Около 7 месяцев назад я без проблем опубликовал приложение для автоматического кликера в Mac App Store. Однако я только что представил новое обновление и был отклонен в двоичном виде по следующей причине: «Ваше приложение использует общедоступные API неутвержденным образом, что не соответствует правилу 2.5.1 Руководства по проверке App Store. В частности, приложение использует специальные возможности. чтобы мышь оставалась активной, что не является предполагаемым использованием API специальных возможностей». В настоящее время я использую CGEvent.post() для автоматического щелчка, и для этого требуются права доступа. Существует ли утвержденный официальный способ программного клика для пользователей? В Mac App Store есть множество автоматических кликеров, поэтому я немного озадачен тем, почему мне сейчас отказывают. Большое спасибо! Вот фрагмент кода, который на самом деле щелкает мышью: ml.x, y: ml.y) var downClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeDown, mouseCursorPosition: location, mouseButton: mouseButton)! var upClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeUp, mouseCursorPosition: местоположение, mouseButton: mouseButton)! downClick.post(tap: .cghidEventTap) upClick.post(tap: .cghidEventTap) >

Взаимодействие с незащищенным процессом внутри изолированной программной среды приложения через IPC

Похожая форма этого вопроса задавалась несколько раз на этом форуме, но ответы сильно различались, и многое изменилось по сравнению с предыдущими сообщениями.* Мое приложение находится в «песочнице приложения», я хочу связаться с другое приложение, которого вообще нет в песочнице. Приложение без песочницы имеет файл IPC, который находится в следующем месте: /var/folders/0x/h5vjdg1s1gb3s__gfr5mmx040000gn/T/discord-ipc-0 cbyrne@Conors-Air в ~ ❯ echo $TMPDIR /var/folders/0x /h5vjdg1s1gb3s__gfr5mmx040000gn/T/ Мое приложение не видит этот файл, и когда я пытаюсь дать ему разрешение на просмотр этого файла с помощью диалогового окна NSOpenPanel, swift-nio не может установить соединение с сокетом: connect(descriptor:addr :size:): Операция не разрешена (ошибка: 1) Однако, если я выпущу свое приложение из «Песочницы приложения»: com.apple.security.app-sandbox, оно работает нормально, и мое приложение может взаимодействовать с приложение без песочницы. Итак, могут ли приложения в песочнице вообще не взаимодействовать с другими приложениями, не входящими в песочницу, через IPC?

В песочнице происходит сбой приложения

Я создал приложение Python с помощью pyinstaller для Mac OS. Приложение работает правильно, и я могу подписать и отправить его в App Store. Поскольку Appstore требует помещать приложение в песочницу, я добавляю опцию песочницы в свой app.entitlements, но в песочнице приложение приводит к сбою приложения с «незаконной аппаратной инструкцией». Я перепробовал много вариантов в своем app.entitlements и никак не мог избежать сбоя. Отправить может часов , надоело не найти ценной информации, посоветуйте пожалуйста.

Песочница приложения MacCatalyst не включена

Я не могу понять, как обойти это сообщение об ошибке, когда пытаюсь загрузить свое приложение Mac Catalyst с помощью Xcode Organizer. Песочница приложения не включена. Следующие исполняемые файлы должны включать право «com.apple.security.app-sandbox» с логическим значением true в списке свойств прав. У меня есть файл .entitlements, правильно настроенный с логическим значением, у меня правильно настроен путь прав в Build Настройки, когда я начинаю процесс загрузки, там появляется логическое значение с правильным значением: даже когда я пытаюсь выполнить команду codesign -d --entitlements :-, я возвращаю правильное значение. Это начало появляться, когда я добавил расширение общего доступа к существующему приложению Mac Catalyst (приложение уже есть в Mac App Store). Я проделал те же шаги и проверки и все равно получил ту же ошибку, поэтому я решил сделать шаг назад, удалить расширение общего доступа и попытаться снова заставить его работать. Отсюда я продолжаю получать ту же ошибку снова и снова. Я попытался заново сгенерировать все профили подготовки вручную, используя автоматическую подпись кода. Пожалуйста помоги! Любые идеи будут оценены.

Ошибка `sandbox_extension_issue_file` при разрешении закладки файла в области безопасности в `/System/Volumes/Data/. `

Я получаю сообщение об ошибке sandbox_extension_issue_file [1: операция не разрешена] от ScopedBookmarkAgent при попытке разрешить успешно созданную закладку в области безопасности через URL-адрес (resolvingBookmarkData:options:relativeTo:bookmarkDataIsStale:), что затем приводит к ошибке Error Domain= NSCocoaErrorDomain Code = 256 «Не удалось выдать расширение песочницы для разрешенного URL-адреса». Ошибка возникает только для файлов в выделенной папке /System/Volumes/Data/Test, а не для файлов и папок, например, /Users/. Насколько я понимаю, все в /System/Volumes/Data/ и ниже должно быть доступно для пользователя. Я убедился, что тестовая папка имеет права на чтение и запись для текущего пользователя, и изменил владельца папки на имя пользователя: персонал, где имя пользователя обозначает мое локальное имя пользователя. Это происходит как в macOS Big Sur 11.6.2, так и в macOS Monterey 12.1. Любая помощь приветствуется!

Нижний колонтитул для разработчиков

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

Функция

Песочница — одна из немногих функций, уникальных только для версии Windows 10 Pro. Функция Песочница недоступна в Windows 10 / Windows 11 Домашняя. Песочница предоставляет пользователю отдельную комнату для запуска любого приложения в ней, что не повлияет ни на какое другое приложение или операционную систему пользователя. Это очень важная функция для тестирования приложений из неизвестных источников, которые в противном случае могут нанести вред системе.

Если вы столкнулись с трудностями при доступе к функции Песочница в Windows 10 Pro, просто воспользуйтесь этими исправлениями.

Оглавление

Fix-1 Включите функцию песочницы из функций Windows-

Чтобы получить доступ к функции Песочница, сначала необходимо включить эту функцию в разделе Компоненты Windows.

<р>1. Нажмите клавишу Windows+R, чтобы открыть окно Выполнить.

<р>2.В окне Выполнить введите или скопируйте и вставьте «дополнительные функции», а затем нажмите Enter, чтобы открыть Функции Windows.

<р>3. В окне Компоненты Windows прокрутите вниз и выберите параметр «Песочница Windows».

<р>4. Теперь нажмите «ОК», чтобы включить эту функцию на вашем компьютере.

Это может занять некоторое время.

<р>5. Когда вы увидите, что «Windows внесла запрошенные изменения», нажмите «Закрыть», чтобы закрыть окно Компоненты Windows.

Ваш компьютер будет перезагружен.

После перезагрузки компьютера проверьте, включена ли функция.

Если это все еще не работает, перейдите к следующему исправлению.

Fix-2 Изменить свойства безопасности песочницы-

Если у вас нет полного доступа к песочнице Windows, вы не сможете получить к ней должный доступ.

<р>1. Нажмите на поле Поиск и введите «песочница».

<р>2. В результатах поиска с повышенными правами щелкните правой кнопкой мыши «Песочницу Windows», а затем выберите «Открыть расположение файла».

<р>3. Теперь снова щелкните правой кнопкой мыши «Песочницу», а затем выберите «Свойства», чтобы получить доступ к ее свойствам.

<р>4. В окне Свойства песочницы Windows перейдите на вкладку «Безопасность».

<р>5. В окне Безопасность нажмите «Изменить», чтобы изменить раздел разрешений.

<р>6. В окне Разрешения для песочницы Windows выберите «Все», а затем нажмите «Разрешить» для параметра «Полный доступ», чтобы разрешить полный доступ к песочнице.

<р>7. Наконец, нажмите «Применить», а затем «ОК», чтобы сохранить изменения на своем компьютере.

Закройте окно Проводник.

<р>8. Теперь снова нажмите поле Поиск рядом со значком Windows и введите «песочница».

<р>9. Нажмите правой кнопкой мыши на «Песочнице Windows» в результатах поиска с повышенными правами, а затем нажмите «Запуск от имени администратора», чтобы открыть Песочницу от имени администратора.

Все должно работать нормально.

Исправить-3 Запустить-остановить необходимые службы-

Вам может помочь перезапуск важных служб.

<р>1. Нажмите клавишу Windows+R.

<р>2. Теперь напишите «services.msc» в поле рядом с «Открыть:», а затем нажмите Enter, чтобы открыть Службы.

<р>3. В окне Службы дважды щелкните «Служба виртуализации сети», чтобы получить доступ к ее свойствам.

<р>4. В окне Свойства службы виртуализации в сети нажмите «Остановить», чтобы остановить службу.

Подождите некоторое время, так как через некоторое время служба будет остановлена.

<р>5. Теперь нажмите «Пуск», чтобы снова запустить службу на вашем компьютере.

<р>6. Наконец, нажмите «Применить», а затем «ОК», чтобы сохранить изменения.

<р>7. Далее вам нужно дважды щелкнуть «Виртуальный диск», чтобы запустить его.

<р>8. Сначала нажмите «Пуск», чтобы запустить остановленную службу.

<р>10. Затем нажмите «Применить», а затем «ОК», чтобы сохранить изменения.

<р>11. Таким же образом прокрутите вверх, чтобы найти и щелкнуть правой кнопкой мыши «Служба хост-компьютера Hyper-V», а затем нажмите «Перезапустить».

<р>12. Затем снова прокрутите вверх и щелкните правой кнопкой мыши «Служба диспетчера контейнеров» и нажмите «Перезапустить», чтобы запустить-остановить службу.

После перезапуска всех этих служб на вашем компьютере закройте окно Службы.

Перезагрузите компьютер.

После перезагрузки компьютера попробуйте открыть песочницу Windows от имени администратора.

Песочница Windows должна работать нормально.

Ваша проблема должна быть решена.

Самбит — инженер-механик по квалификации, который любит писать о Windows 10 и решениях самых странных проблем.

Читайте также: