Песочница — это новый легковесный инструмент в ОС Windows, позволяющий запускать приложения в безопасном изолированном окружении.

Случалось ли Вам оказаться в ситуации, когда необходимо запустить какую-то программу, но Вы не совсем уверены в источнике её происхождения? Или другой пример — необходимость проверить что-то на «чистой» версии Windows. Во всех подобных случаях раньше был только один выход — установить ОС на отдельную физическую или виртуальную машину и провести нужный эксперимент. Но это больше не так.

Microsoft разработал новый механизм под названием Песочница (eng. Windows Sandbox). Это изолированное временное окружение, в котором Вы можете запускать подозрительное программное обеспечение без риска навредить своему ПК. Любое ПО, установленное в Песочнице, остаётся только в Песочнице и не может взаимодействовать с основной ОС. Как только Вы закрываете Песочницу — всё её содержимое безвозвратно уничтожается.

Вот основные особенности Песочницы:

  • Это часть ОС Windows. Если у Вас Windows 10 Pro или Enterprise, то Вы уже можете начать ею пользоваться.
  • С чистого листа. При каждом запуске Песочницы Вы получаете одно и то же, чистое, неизменное окружение. В точности такое, какой была Ваша ОС сразу после её установки.
  • Никаких следов. При закрытии Песочницы уничтожаются все установленные в ней приложения, все созданные там файлы. Закрыли Песочницу — не осталось никаких следов её существования.
  • Безопасность. Используется аппаратная виртуализация, которая использует гипервизор для запуска отдельного ядра ОС и изолирует его от Вашей основной ОС
  • Эффективность. Используется интегрированный планировщик задач, умное управление памятью, виртуальный GPU.

Системные требования


  • Windows 10 Pro или Enterprise, билд 18305 или выше
  • Архитектура AMD64
  • Включенная в BIOS виртуализация
  • Минимум 4 ГБ (рекомендовано 8 ГБ) оперативной памяти
  • Минимум 1 ГБ свободного места на диске (рекомендуется SSD)
  • Процессор с двумя ядрами (рекомендуется 4 с поддержкой hyper-threading)

Быстрый старт


1. Установите Windows 10 Pro или Enterprise, билд 18305 или выше

2. Включите виртуализацию:

  • Если Вы работаете на физической машине — сделайте это в BIOS
  • Если Вы работаете на виртуальной машине — используйте следующую PowerShell команду:

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

3. Откройте (через Панель Управления) список установленных компонентов Windows и включите в нём Песочницу. Нажмите ОК. Если увидите запрос на перезагрузку компьютера — подтвердите его.

image

4. Запустите Песочницу из меню Пуск. Разрешите повышение прав для её процесса.

5. Скопируйте (через буфер обмена) в Песочницу бинарник, который хотите запустить.

6. Запустите бинарник в Песочнице. Если это инсталлятор — пройдите процедуру установки и запустите установленное приложение.

7. Используйте приложение по назначению.

8. Когда закончите — просто закройте Песочницу. Всё её содержимой будет удалено.

9. Опционально — можете убедиться, что в Вашей основной ОС ничего не изменилось.

image

Что под капотом у Песочницы


Песочница Windows построена на технологии, которая называется Windows Containers. Контейнеры разрабатывались (и давно используются) для работы в облаке. Microsoft взял уже достаточно зрелую и протестированную технологию и доработал её для пользователей десктопной Windows.

Среди ключевых адаптаций можно отметить:

Динамически генерируемый образ


Песочница является хотя и легковесной, но всё же виртуальной машиной. И, как любой виртуальной машине, ей требуется образ, с которого она может загрузится. Важнейшей особенностью Песочницы является то, что Вам не нужно откуда-то качать или создавать этот образ. Он создастся на лету, из файлов вашей текущей ОС Windows.

Мы хотим всегда получить одно и то же «чистое» окружение для Песочницы. Но есть проблема: некоторые системные файлы могут меняться. Решением было создание «динамически генерируемого образа»: для изменённых файлов в него будут включаться их оригинальные версии, но вот неизменные файлы физически в этот образ входить не будут. Вместо них будут использоваться ссылки на реальные файлы на диске. Как показала практика — такими ссылками будут большинство файлов в образе. Лишь малая их часть (около 100 МБ) войдут в образ полностью — это и будет его размер. Более того, когда Вы не используете Песочницу, эти файлы хранятся в сжатом виде и занимают около 25 МБ. При запуске Песочницы они разворачиваются в тот самый «динамический образ» размером около 100 МБ.

image

Умное управление памятью


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

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

image

Интегрированный планировщик


В случае использования обычных виртуальных машин гипервизор контролирует работу виртуальных процессоров, работающих в них. Для Песочницы была разработана новая технология, которая называется «интегрированный планировщик», которая позволяет основной ОС решать когда и сколько ресурсов выделить Песочнице. Работает это так: виртуальный процессоры Песочницы работают как потоки внутри процесса Песочницы. В итоге они имеют те же «права», что и остальные потоки в вашей основной ОС. Если, к примеру, у вас работают какие-то высокоприоритетные потоки, то Песочница не будет отнимать у них много времени для выполнения своих задач, которые имеют нормальный приоритет. Это позволит пользоваться Песочницей, не замедляя работу критически важных приложений и сохраняя достаточную отзывчивость UI основной ОС, аналогично тому, как работает Linux KVM.

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

Использование «снимков»


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

Виртуализация графики


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

Кроме того, Microsoft активно работала с производителями графических систем и драйверов для того, чтобы интегрировать возможности виртуализации графики непосредственно в DirectX и WDDM (модель драйверов в ОС Windows).

В результате графика в Песочнице работает следующим образом:

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

Это процесс можно изобразить так:

image

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

Использование батареи


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

Отзывы и сообщения о проблемах


В любой новой технологии могут быть баги. Microsoft просит присылать сообщения о них и предложения новых фич через Feedback Hub.

Комментарии (103)


  1. saipr
    19.12.2018 19:37

    другой пример — необходимость проверить что-то на «чистой» версии Windows.

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


    1. dartraiden
      19.12.2018 20:24

      Если что-то есть в основной системе — оно уже доступно в песочнице.


      1. saipr
        19.12.2018 21:25

        Резонно. Но тогда что такое «чистая» версии Windows?


        1. leschenko
          20.12.2018 00:39

          Видимо «чистая» от того самого приложения, которое надо проверить. Например keygen, который еще и 10 разных зверей выкачает и установит.
          Запустил, получил результат — удалил.


          1. saipr
            20.12.2018 09:11

            Видимо «чистая» от того самого приложения, которое надо проверить.

            Но тогда, чтобы всеже проверить что-то на чистой ОС придется таки ставит эту самую Windows/


            1. gdt
              20.12.2018 15:30

              Вот это поворот.


      1. tangro Автор
        20.12.2018 01:22
        +1

        Откуда это такое предположение?


        1. dartraiden
          20.12.2018 01:30
          +1

          Тогда это будет как-то неудобно… допустим, мне нужно проверить работу некоторой программы, но для этого я должен как-то подсунуть ей данные?

          Хотя, смущает «every time Windows Sandbox runs, it’s as clean as a brand-new installation of Windows».

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


          1. tangro Автор
            20.12.2018 12:16

            Ну вот именно — Песочница не должна получать доступ ни к чему, что пользователь ей явно не предоставит.


          1. sshmakov
            20.12.2018 16:46

            Copy-paste для файлов работает


  1. postgres
    19.12.2018 19:45

    Наконец-то встроенное подобие sandboxie

    Как только Вы закрываете Песочницу — всё её содержимое безвозвратно уничтожается.
    Надеюсь можно будет сохранять состояние песочниц (upd Проморгал снимки)
    Еще хотелось бы выхода для домашней версии…


    1. slaFFik
      19.12.2018 19:50

      В статье же написано про использование «снимков». Так что да, видимо, можно будет сохранять после настройки и запускать из снимков.


      1. dartraiden
        19.12.2018 20:25

        Надеюсь, будет возможность «залезть» внутрь снимков, чтобы вытащить оттуда изменённый приложением файл, например.


        1. slaFFik
          19.12.2018 20:54

          После запуска — очевидно, что возможно будет. Это же обычный контейнер, будет полный доступ к файловой системе, когда он запущен. ИМХО.


    1. leschenko
      20.12.2018 00:41

      Домашняя версия не умеет Hyper-V и Containers. Учить ее этому не будут => не будет песочницы в домашней версии.


      1. lgorSL
        20.12.2018 12:48

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


        1. JustLuckyGuy
          20.12.2018 14:26

          Так может там предустановленна такая версия, потому что большинство не готовы за гипервизор и другие «не очень нужные штуки» платить несколько лишних тысяч при покупке ноута?


        1. leschenko
          20.12.2018 14:56
          +1

          Если Вам мало домашней версии, Вы всегда можете обновить ее до Про.


          1. ad1Dima
            21.12.2018 07:42

            Не мало ноутов уже с ней продаются…


            1. leschenko
              21.12.2018 17:56

              Не надо переустанавливать, можно обновить.


      1. chupasaurus
        20.12.2018 14:14

        Нативные контейнеры работают без Hyper-V, но только на Windows Server.


    1. lostmsu
      20.12.2018 01:00

      Я добавил request для перманентных песочниц им в Feedback Hub. Плюсуйте!


  1. Javian
    19.12.2018 19:48
    +2

    off Какое-то хождение по кругу. В Windows 7 появился похожий «режим XP». Кому этого мало появился Hyper-V. Теперь своеобразный возврат к режиму ХР.
    Собственно осталось опробовать в реальности. Когда это обновление будет?


    1. tangro Автор
      19.12.2018 19:58

      Если смотреть на нумерацию билдов и текущий график релизов, то где-то в пределах 1-2 недель


      1. Demon_i
        20.12.2018 23:52

        Это обновление прилетело вчера через 2 часа после Вашего сообщения.

        P.S. Глюк №1. Если добавить опцию, но нажать «перегрузить позже» (выключить комп штатно и включить потом) — оно не появляется в пуске.
        Глюк №2. Удалил и добавил снова. Перегрузился как положено. Оно появилось в пуске, но по нажатию ничего не происходит.


        1. ad1Dima
          21.12.2018 08:35

          P.S. Глюк №1. Если добавить опцию, но нажать «перегрузить позже» (выключить комп штатно и включить потом) — оно не появляется в пуске.
          Сейчас выключение компа не настоящее. Там по умолчанию гибернация происходит (может частичная).


    1. hurtavy
      19.12.2018 20:38

      Так это и есть Hyper-V, только с динамически создающимся образом


    1. saege5b
      20.12.2018 22:26

      Вначале был Connectix Virtual PC.
      Потом их купили Мелкомягкие.
      Потом, после долгого раздувания размера проги, её начали впихивать в Виндовс.
      И очень долго, работа с ЮСБ там была сильно ограниченной (в оригинале ЮСБ не было).
      Интересно как дела обстоят сейчас?


      1. SergeyMax
        20.12.2018 08:13
        +1

        после долгого раздувания размера проги
        по-моему в самом последнем релизе она весила мегабайт 10 от силы
        Интересно как дела обстоят сейчас?
        десять лет назад на замену ей пришёл Hyper-V


  1. zuborg
    19.12.2018 19:48

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



  1. greabock
    19.12.2018 20:41
    +3

    Ждем серии статей под заголовками "Уязвимость <звучное_название>. Побег из windows sandbox"


  1. postgres
    20.12.2018 22:12

    Решил обновить домашнюю версию (не спрашивайте зачем)

    Ругнулся:


    1. hex_none
      20.12.2018 01:19

      Несовместимость исправлена в последней бета версии Sandboxie. Скачать можно с официального форума. Работает стабильно.


    1. dartraiden
      20.12.2018 01:35

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


      1. sumanai
        20.12.2018 23:54

        Расплата за то, что Sandboxie старается по-максимуму использовать то, что предоставляет операционная система, а не изобретать велосипеды.

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


  1. FeNUMe
    20.12.2018 22:35

    Хм, ни слова об UWF… странно


    1. ad1Dima
      20.12.2018 06:40

      University of West Florida?


      1. FeNUMe
        20.12.2018 19:22

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


    1. avelor
      20.12.2018 19:22

      это не совсем песочница, но штука хорошая.
      вот ссылка на почитать (видать поэтому минусуют) docs.microsoft.com/en-us/windows-hardware/customize/enterprise/unified-write-filter


  1. thatsme
    20.12.2018 22:44

    Минимум 4 ГБ (рекомендовано 8 ГБ) оперативной памяти
    Процессор с двумя ядрами (рекомендуется 4 с поддержкой hyper-threading)


    нифига себе «песочница»…


    1. ad1Dima
      20.12.2018 06:46

      Кажется девайсы с 1 ядром не выпускают уже лет 100. А запускать 10 на менее 4ГБ оперативы, это прям не надо так.


      1. 8street
        20.12.2018 16:47
        +1

        Будете смеяться, на работе компы пришли с 2 Гб оперативки и лицензией Win10. Закупщиков хочется задушить.


        1. avelor
          20.12.2018 19:22

          более того, попадались какие-то ноуты (уже не вспомню модель) где 2гб оперативки распаянных на плате. без дополнительных слотов.
          зато с вин10 и недорогие!


          1. mistergrim
            21.12.2018 01:02

            Сейчас не редкость ноуты с 2 Гб памяти и 64-битной Windows.


  1. iga2iga
    19.12.2018 23:03
    +1

    Это всё прикольно до той поры пока не надо будет запустить VMWare или VBox, т.к. виндовый Hyper-V будет болтаться в памяти как сервис, ну а вышеобозначенное ПО при попытке запуска будет ругаться, что в системе уже запущен некий виртуализатор. По крайней мере при установке родного виндового Hyper-V было именно так.


    1. hurtavy
      19.12.2018 23:39

      Так и осталось. Хотя, в новой вчерашней виртуалбокс сделали нормальное определение этой ситуации. Теперь виртуалбокс, хоть и гораздо медленнее, но работает без VT-x, которую захватывает Hyper-V


      1. CaptainFlint
        20.12.2018 00:57
        +1

        Нет, софтовая виртуализация была доступна всегда, но она не умеет 64-битные машины и многопроцессорные гостевые системы. Насколько я понял из Changelog'а, в VBox 6 добавили возможность прямого использования гипервизора Hyper-V вместо родного VBox'овского.


        1. vvmtutby
          20.12.2018 10:57

          VirtualBox 6.0 released
          •Added support for using Hyper-V as the fallback execution core on Windows host, to avoid inability to run VMs at the price of reduced performance
          Как изящно выразился rseiler на форуме VBox:
          I've since seen the one new line there mentioning Hyper-V, but it's a bit cryptic.
          В частности:
          Аналогично как и в Android emulator ( точнее как в QEMU ) используется API WHPX ( Windows Hypervisor Platform )?


          1. CaptainFlint
            20.12.2018 11:23

            К сожалению, не знаю, как это работает в QEMU, да и в VB пока ещё не пробовал (собственно, особо и не планировал пробовать), но для меня строчка звучит достаточно внятно и разумно: использование HV в качестве исполняющего вирт. машину ядра (гипервизора), чтобы запускаться хоть как-то, а не бессильно вопить об ошибке (из-за захваченной HV виртуализации).

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


        1. springimport
          20.12.2018 17:34

          Я правильно понял что в vbox 6 будет нормально работать на h-v?


          1. CaptainFlint
            20.12.2018 18:20

            Насколько я понял, да.


    1. vvmtutby
      20.12.2018 11:26

      Это всё прикольно до той поры пока не надо будет запустить VMWare
      Уже было писал об этом:
      VMware всё равно придётся решать проблему VMware Workstation in Hyper-V.

      Обучение отключению Credential Guard/Device Guard ( Turn on Virtualization Based Security ) в Article 2146361 вызывает «сложные эмоции» у заботящихся о защите от «утечки паролей»

      В качестве выхода из ситуации, было бы неплохо программистам VMWare освоить API WHPX ( Windows Hypervisor Platform )


  1. CaptainFlint
    19.12.2018 23:12
    +2

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


    1. KostaArnorsky
      20.12.2018 03:11

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


      1. CaptainFlint
        20.12.2018 11:28

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


  1. AlexanderS
    19.12.2018 23:14

    Кто может оценить надёжность решения в плане проникновения из гостевой ОС в хостовую? И что именно оказывается в гостевой ОС, например, мои куки из браузера? Вопросов вного. К VB или VMW как-то доверие какое-то есть, а тут как-то… непонятно)


    1. hurtavy
      19.12.2018 23:59

      Надо конечно проверять, но думаю, они в эту виртуалку не копируют профиль пользователя


      1. dartraiden
        20.12.2018 01:40

        Тогда это вообще не «встроенный Sandboxie», как уже порадовались выше в комментариях…

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


  1. esata
    20.12.2018 02:34

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


    1. awsswa59
      20.12.2018 07:13

      Ждать не нужно. CheckPoint вам в руки. Для любителей отечественого софта — Kaspersky Anti Targeted Attack.
      Проблема в том что весть софт шифровальшиков уже научился работать с песочницами:
      Стартую не сразу. Определяют что запущены в виртуальной машине и вообще не стартуют.


      1. Norno
        20.12.2018 12:16

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


  1. mSnus
    20.12.2018 03:00

    Интересно, есть ли у них настройки, чтобы:
    1) разрешить/запретить доступ в Интернет
    2) контролировать, какие папки доступны из песочницы/монтируются туда


    1. 8street
      20.12.2018 16:55

      Ну раз это надстройка над HyperV, то наверное можно будет настроить сеть.


  1. erkesh
    20.12.2018 07:02

    Неплохо. Долго ждал подобную функциональность. Надеюсь, не забросят


  1. kalapanga
    20.12.2018 09:38

    Как-то не очень коррелирует присутствие этой функции только в про и энтерпрайз версиях и вот такое её предназначение:

    Случалось ли Вам оказаться в ситуации, когда необходимо запустить какую-то программу, но Вы не совсем уверены в источнике её происхождения?
    Запуск сомнительных программ? На предприятии?


    1. Foggy4
      20.12.2018 12:29

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


    1. perlestius
      20.12.2018 17:37

      А как же! Самописный софт всякий, антивирус новый, да тот же Skype, в конце концов! :)


  1. kovserg
    20.12.2018 10:14

    Обновления Windows можно запускать в этой песочнице?


    1. tangro Автор
      20.12.2018 12:19

      Если основная ОС стабильно обновляется, а Песочница запускает ту же версию ОС, то откуда в ней могут взяться обновления?


      1. Duss
        20.12.2018 17:59

        Суть, наверно в том, чтобы сначала накатить обновления в песочнице и проверить работоспособность песочницы и ПО до того, как ставить обновления на хост.


      1. slonopotamus
        20.12.2018 20:26

        Минуточку. В статье сказано следующее:


        В точности такое, какой была Ваша ОС сразу после её установки.

        Так проникают апдейты хоста в перочницу или нет?


        1. tangro Автор
          21.12.2018 11:56

          Пока без понятия и мы не сможем проверить это как минимум до следующего после 18305 обновления.


  1. khdavid
    20.12.2018 11:06

    Первое, что я проверю, работает ли песочница в песочнице?


    1. MikailBag
      20.12.2018 12:18

      вложенная VTx не работает, емнип.


  1. chinacoolhacker
    20.12.2018 14:30

    Не очень понял, если реальные файлы «линкуются»(софтлинк?) внутрь песочницы — я могу их модифицировать изнутри этой самой песочницы? Или они всё же линкуются в read-only режиме? Из статьи это не очевидно.


    1. svolkk
      21.12.2018 11:53

      Вот да, мне тоже интересно.
      1. Если файлы линкуются read-only, далеко не всё можно будет проверить.
      2. Если есть доступ на запись, то прощай безопасность.
      3. Хороший вариант было бы использовать технологию аналогичную снапшотам, когда идёт запись изменений в отдельный файл.

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

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


  1. CyberWarrior
    20.12.2018 16:15

    Штука прикольная — но, на мой взгляд, это встроенная в ОС Vmware: песочится не только приложение, а вся ОС. Часто хочется изолировать только 1 приложение, потециально опасное, такое как браузер, чтобы, в случае попадания на вредоносный сайт, не заразить машину. И «запесочить» только браузер, причем не вновь установленный, а уже присутствующий в системе браузер запустить в песочнице в один клик, прозрачно для пользователя. Поэтому я все еще выбираю Shade Sandbox :)


    1. kovserg
      21.12.2018 15:01

      Приходилось пользоваться virtualbox чтобы в её песочнице пускать winxp в которой устанавливались дрова для сканера и remotetwain что бы можно было сканировать из новой винды. т.к. дров для десятки нет. Вот это прикольная штука, но вынужденная.


  1. yatagarasu
    20.12.2018 17:29

    Вещь безусловно интересная, но в хозяйстве мало необходимая, а вот поддержка нескольких мониторов хромает до сих пор.


    1. SergeyMax
      20.12.2018 18:26

      А что не так с поддержкой нескольких мониторов?


      1. yatagarasu
        20.12.2018 21:50
        +2

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


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


        А песочница мне очень нужна, да, я прям пока новость эту не прочитал и не понимал как она мне нужна)


        1. SergeyMax
          21.12.2018 07:41

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


          1. yatagarasu
            21.12.2018 11:46

            Что само по себе удивительно, определить разрешение экрана она позволяет а состояние монитора нет. Мне кажется электротехнически тут никаких проблем нет, просто эффективным менеджерам было лень.

            ЗЫ. Но по остальным проблемам вопрос остаётся открытым. И видимо никогда решен не будет.

            А Вы в Микрософт работаете, раз помощь свою предлагаете?


            1. SergeyMax
              21.12.2018 12:25

              Мне кажется электротехнически тут никаких проблем нет
              Ну это хорошо, что вам кажется. Не поспоришь.


      1. backsapce
        21.12.2018 11:53

        Банально при перемещении по виртуальным столам происходит перемещение на обоих мониторах. Посмотрите на то, как реализована работа с несколькими мониторами в macOS.


        1. SergeyMax
          21.12.2018 12:23

          Вы не пробовали отключить клонирование экрана?


          1. sumanai
            22.12.2018 02:38

            Так не поможет, рабочие столы синхронно меняются на всех экранах, даже если у них разное содержимре.


  1. springimport
    20.12.2018 17:50

    Когда же разработчики винды решатся перевести все приложения в контейнеры: uwp, обычные exe и т.д. Причем чтобы можно было их устанавливать как из store, так и из своих источников, как на android.
    Чтобы на новом компе после логина сразу все ставилось, включая данные… и общие библиотеки чтобы и разные версии одновременно…


    1. Veikedo
      20.12.2018 18:14

      Чтобы на новом компе после логина сразу все ставилось

      Тоже этого джва года жду.


      Пока что юзаю chocolately и файл с установленным софтом храню в облаке.


      1. springimport
        20.12.2018 18:23

        Тогда хочу узнать, а нормально ли он работает? В смысле, не будет постоянного чувства третьего колеса?
        После того как на айфонах сделали фичу когда подносишь новый смартфон к старому и все сразу перекачивается, делая новый смартфон «твоим» за 5-10 минут, в майкрософте 100% должны тоже так сделать.


        1. Veikedo
          20.12.2018 18:28

          Работает нормально, но не без неудобств — нужно установить сам choco через powershell и не забывать периодически синхронизировать список установленных программ (можно в gui экспорт делать).
          Обновление программ тоже вручную (ну или в планировщик задачу добавить).


          Но жирный плюс — не нужно по инсталляторам ходить и тыкать кнопочки


          1. springimport
            20.12.2018 18:48

            Ясно, уже долго присматриваюсь, но не было уверенности :)


    1. sumanai
      20.12.2018 23:59

      Чтобы на новом компе после логина сразу все ставилось, включая данные… и общие библиотеки чтобы и разные версии одновременно…

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


      1. springimport
        21.12.2018 00:05

        Настройки и еще раз настройки.


    1. ad1Dima
      21.12.2018 08:43

      Разработчики винды не могут всё сделать за других разработчиков — слишком многие используют всякие недокументированные возможности, хаки и костыли. Для сторонних разработчиков они уже сделали: docs.microsoft.com/en-us/windows/msix


    1. yatagarasu
      21.12.2018 11:53

      Чтобы на новом компе после логина сразу все ставилось, включая данные… и общие библиотеки чтобы и разные версии одновременно…

      Напоминает ноду.жс, которая все свои нпм-ы хранит в роаминг профайле ;)


  1. vsb
    20.12.2018 18:05

    Очень нужная фича для меня, спасибо. Я ради неё купил вторую лицензию венды, чтобы запускать в виртуалке. Не самый приятный опыт, скажу я вам, активация слетает только так, постоянно звоню в Москву, не говоря уже про стоимость самой лицензии. Так ещё и Pro версия требуется для RDP. У меня на хосте Pro, на госте честно говоря жмотюсь, из-за этого один важный юз-кейс не работает, проброс USB-устройства. Интересно, как с этим у этой песочницы. Скорее всего никак, но вдруг?


  1. oisee
    20.12.2018 19:00

    Я правильно понимаю, что это же вот такой новый лёгкий способ продлевать свои Trial'ные версии бесконечно? =)


  1. LorHobbit
    20.12.2018 19:13

    > Песочница Windows построена на технологии, которая называется Windows Containers. Контейнеры разрабатывались (и давно используются) для работы в облаке. Microsoft взял уже достаточно зрелую и протестированную технологию и доработал её для пользователей десктопной Windows.
    Угу, и в статье ни одного упоминания, например, про Docker.


    1. ad1Dima
      21.12.2018 08:55

      А что, Докер? Имеются ввиду виндовые контейнеры, которые они дорабатывали в том числе для Docker for Windows. Но как это относится к статье?


  1. simplix
    20.12.2018 19:23

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


    1. sumanai
      21.12.2018 00:00

      Судя по тексту, оверхед тут минимальный, на уровне OpenVZ для Linux.