百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

一文彻底搞懂windows10和11的沙盒Sandbox功能及自定义配置沙盒

ztj100 2024-11-19 13:55 25 浏览 0 评论

Windows 沙盒提供了轻型桌面环境,可以安全地在隔离状态下运行应用程序。 安装在 Windows 沙盒环境下的软件保持“沙盒”状态,并且与主机分开运行。

沙盒是临时的。 关闭后,系统将删除所有软件和文件以及状态。 每次打开应用程序时,都会获得沙盒的全新实例。

安装在主机上的软件和应用程序不会直接出现在沙盒中。 如果需要在 Windows 沙盒环境中运行特定的应用程序,则相应的应用程序必须就是安装在沙盒环境中才行。

Windows 沙盒具有以下属性:

  • Windows 自带功能:此功能所需的一切内容都包含在 Windows 10 专业版和企业版中。 无需单独下载 。
  • 原生:每次 Windows 沙盒运行时,都像全新安装的 Windows 一样干净。
  • 无痕:设备上不会保留任何内容。 当用户关闭应用程序时,系统会丢弃所有内容。
  • 安全:使用基于硬件的虚拟化进行内核隔离。 它依赖 Microsoft 虚拟机监控程序运行单独的内核,可将 Windows 沙盒与主机隔离。
  • 高效: 采用集成的内核计划程序、智能内存管理和虚拟 GPU。
  • Windows 沙盒默认启用网络连接。


开启windows沙盒的必备条件

  • Windows 10 专业版、企业版或教育版 18305 或 Windows 11(Windows 家庭版当前暂不支持 Windows 沙盒
  • AMD64 或(截至Windows 11 内部版本 22483)ARM64 体系结构
  • BIOS 中启用的虚拟化功能
  • 至少 4GB 内存(建议使用 8GB)
  • 至少 1GB 可用硬盘空间(建议使用固态硬盘)
  • 至少双核 CPU(建议使用超线程四核)


如何查看windows版本

  按下快捷键,win+R,输入cmd,确定,打开命令窗口,输入msinfo32,注意要在英文状态下输入,回车。然后在弹出的窗口中就可以看到系统的具体版本号了。

  按下快捷键,win+R,输入cmd,确定,打开命令窗口,输入ver,回车。

  按下快捷键,win+R,输入winver,确定。  


开启沙盒:

1,点击开始菜单--输入“控制面板”

2,控制面板中,打开程序

3,在程序中,点击 启用或关闭windows功能,找到windows沙盒,打上√。点击确定

沙盒软件测试:

1,打开windows沙盒

点击开始菜单--输入 windows sandbox,点击打开

2,下载安装软件

比如QQ,独立安装在windows沙盒中。并不会出现在主机上。当然主机上的软件火绒也同样不会出现在windows沙盒中。


3,关闭沙盒

点击关闭windows沙盒程序,会提示,关闭windows沙盒后,其所有内容都将放弃并永久丢失。

windows和沙盒之间的数据传输

windows沙盒和主机系统之间是无法通过拖拽传输数据的

可以通过复制粘贴,直接复制主机上的文件,然后粘贴在windows沙盒中即可

windows沙盒网络如何通信

windows沙盒和主机之间的网络通信,使用的是Hyper-V Network。采用了Hyper-V网络虚拟化技术,通过虚拟网卡和主机进行通信。


windows沙盒网关地址指向主机上的Hyper-V虚拟网卡的地址。

windows沙盒,是否支持多开实例

不支持多开。运行一个windows沙盒后,再次打开Windows Sandbox。会提示如下报错。仅允许一个运行的Windows沙盒

高级技巧:自定义沙盒

Windows 沙盒支持简单的配置文件,这些文件为 Sandbox 提供最少的自定义参数集。 此功能可用于Windows 10版本 18342 或Windows 11。 Windows 沙盒配置文件的格式设置为 XML,并通过.wsb文件扩展名与 Sandbox 关联。

配置文件使用户能够控制Windows 沙盒的以下方面:

  • **vGPU (虚拟化 GPU) **:启用或禁用虚拟化 GPU。 如果禁用 vGPU,沙盒将使用 Windows 高级光栅化平台 (WARP) 。
  • 网络:在沙盒中启用或禁用网络访问。
  • 映射的文件夹:使用读取或写入权限从主机共享文件夹。 公开主机目录可能会允许恶意软件影响系统或窃取数据。
  • 登录命令:启动Windows 沙盒时执行的命令。
  • 音频输入:将主机的麦克风输入共享到沙盒中。
  • 视频输入:将主机的网络摄像头输入共享到沙盒中。
  • 受保护的客户端:将 RDP 会话上增强的安全设置放置到沙盒。
  • 打印机重定向:将打印机从主机共享到沙盒中。
  • 剪贴板重定向:与沙盒共享主机剪贴板,以便可以来回粘贴文本和文件。
  • 内存(以 MB 为单位):要分配给沙盒的内存量(以兆字节为单位)。

创建配置文件

若要创建配置文件,请执行以下操作:

  1. 打开纯文本编辑器或源代码编辑器 (,例如记事本、Visual Studio Code等)
  1. 插入以下行:
<Configuration>
</Configuration>
  1. 在两行之间添加适当的配置文本。 有关详细信息,请参阅正确的语法和下面的示例。
  1. 保存具有所需名称的文件,但请确保其文件名扩展名为 .wsb。 在记事本中,应将文件名和扩展插件括在双引号内,例如 "My config file.wsb"。

使用配置文件

若要使用配置文件,请双击它,根据其设置开始Windows 沙盒。 也可以通过命令行调用它,如下所示:

C:\Temp> MyConfigFile.wsb 

关键字、值和限制

vGPU

启用或禁用 GPU 共享。

<vGPU>value</vGPU>

支持的值:

  • 启用:在沙盒中启用 vGPU 支持。
  • 禁用:在沙盒中禁用 vGPU 支持。 如果设置此值,沙盒将使用软件呈现,这可能比虚拟化 GPU 慢。
  • 默认 此值是 vGPU 支持的默认值。 目前,此默认值表示已禁用 vGPU。

备注:启用虚拟化 GPU 可能会增加沙盒的攻击面。

网络

启用或禁用沙盒中的网络。 可以禁用网络访问,以减少沙盒暴露的攻击面。

<Networking>value</Networking>

支持的值:

  • 禁用:在沙盒中禁用网络。
  • 默认值:此值是网络支持的默认值。 此值通过在主机上创建虚拟交换机来启用网络,并通过虚拟 NIC 将沙盒连接到它。

备注:启用网络可以向内部网络公开不受信任的应用程序。

映射的文件夹

一个文件夹数组,每个文件夹表示主机上将共享到指定路径的沙盒中的位置。 目前不支持相对路径。 如果未指定路径,文件夹将映射到容器用户的桌面。


<MappedFolders><MappedFolder> 
    <HostFolder>absolute path to the host folder</HostFolder> 
    <SandboxFolder>absolute path to the sandbox folder</SandboxFolder> 
    <ReadOnly>value</ReadOnly> 
  </MappedFolder><MappedFolder>  
    ...
  </MappedFolder></MappedFolders>

HostFolder:指定要共享到沙盒中的主机上的文件夹。 该文件夹必须已存在于主机上,否则容器将无法启动。

沙盒文件夹:指定要将文件夹映射到的沙盒中的目标。 如果文件夹不存在,则会创建该文件夹。 如果未指定沙盒文件夹,文件夹将映射到容器桌面。

ReadOnly:如果 为 true,则强制从容器内对共享文件夹进行只读访问。 支持的值: true/false。 默认值为 false

备注:从主机映射的文件和文件夹可能会被沙盒中的应用入侵,或者可能会影响主机。

登录命令

指定在沙盒登录后自动调用的单个命令。 沙盒中的应用在容器用户帐户下运行。 容器用户帐户应为管理员帐户。


<LogonCommand><Command>command to be invoked</Command></LogonCommand>

命令:容器中要在登录后执行的可执行文件或脚本的路径。

备注:尽管非常简单的命令 ((例如启动可执行文件或脚本) )有效,但应将涉及多个步骤的更复杂的方案放入脚本文件中。 此脚本文件可通过共享文件夹映射到容器,然后通过 LogonCommand 指令执行。

音频输入

启用或禁用沙盒的音频输入。

<AudioInput>value</AudioInput>

支持的值:

  • 启用:在沙盒中启用音频输入。 如果设置了此值,沙盒将能够接收用户的音频输入。 使用麦克风的应用程序可能需要此功能。
  • 禁用:禁用沙盒中的音频输入。 如果设置了此值,沙盒将无法接收用户的音频输入。 使用麦克风的应用程序可能无法在此设置中正常运行。
  • 默认值:此值是音频输入支持的默认值。 目前,此默认值表示已启用音频输入。

备注:向容器公开主机音频输入可能会有安全影响。

视频输入

启用或禁用沙盒的视频输入。

<VideoInput>value</VideoInput>

支持的值:

  • 启用:在沙盒中启用视频输入。
  • 禁用:在沙盒中禁用视频输入。 使用视频输入的应用程序可能无法在沙盒中正常工作。
  • 默认值:此值是视频输入支持的默认值。 目前,此默认值表示已禁用视频输入。 使用视频输入的应用程序可能无法在沙盒中正常工作。

备注:向容器公开主机视频输入可能会产生安全影响。

受保护的客户端

将更多安全设置应用到沙盒远程桌面客户端,减少其攻击面。

<ProtectedClient>value</ProtectedClient>

支持的值:

  • 启用:在受保护的客户端模式下运行 Windows 沙盒。 如果设置了此值,沙盒将运行并启用额外的安全缓解措施。
  • 禁用:在标准模式下运行沙盒,而无需额外的安全缓解措施。
  • 默认值:此值是受保护客户端模式的默认值。 目前,此默认值表示沙盒未在受保护的客户端模式下运行。

备注:此设置可能会限制用户在沙盒中复制/粘贴文件的能力。

打印机重定向

启用或禁用从主机到沙盒的打印机共享。

<PrinterRedirection>value</PrinterRedirection>

支持的值:

  • 启用:启用将主机打印机共享到沙盒。
  • 禁用:在沙盒中禁用打印机重定向。 如果设置了此值,沙盒将无法从主机查看打印机。
  • 默认值:此值是打印机重定向支持的默认值。 目前,此默认值表示已禁用打印机重定向。

剪贴板重定向

启用或禁用与沙盒共享主机剪贴板。

<ClipboardRedirection>value</ClipboardRedirection>

支持的值:

  • 禁用:在沙盒中禁用剪贴板重定向。 如果设置了此值,则会限制在沙盒中复制/粘贴。
  • 默认值:此值是剪贴板重定向的默认值。 目前, 默认情况下允许在主机和沙盒之间复制/粘贴。

内存(以 MB 为单位)

指定沙盒可以使用 MB (MB) 的内存量。

<MemoryInMB>value</MemoryInMB>

如果指定的内存值不足以启动沙盒,则会自动将其增加到所需的最小量。


Sandbox配置实例1

以下配置文件可用于轻松测试沙盒内下载的文件。 若要实现此测试,将禁用网络和 vGPU,并允许沙盒对共享下载文件夹进行只读访问。 为方便起见,登录命令会在沙盒中打开下载文件夹。

<Configuration>
  <VGpu>Disable</VGpu>
  <Networking>Disable</Networking>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>C:\Users\Public\Downloads</HostFolder>
      <SandboxFolder>C:\Users\WDAGUtilityAccount\Downloads</SandboxFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>explorer.exe C:\users\WDAGUtilityAccount\Downloads</Command>
  </LogonCommand>
</Configuration>

注意事项:

对应的文件夹目录一定要正确,否则无法打开windows sandbox,会有报错提示。

<HostFolder>C:\Users\Public\Downloads</HostFolder>,对应你本机的文件夹目录。

Sandbox配置实例2

以下配置文件在沙盒中安装Visual Studio Code,这需要稍微复杂的 LogonCommand 安装。

两个文件夹映射到沙盒中;第一个 (SandboxScripts) 包含 VSCodeInstall.cmd,它将安装并运行Visual Studio Code。 (CodingProjects) 的第二个文件夹假定包含开发人员想要使用Visual Studio Code修改的项目文件。

这2个文件夹需要在主机目录下创建。

C:\SandboxScripts

C:\CodingProjects

由于Visual Studio Code安装程序脚本已映射到沙盒中,LogonCommand 可以引用它。

VSCodeInstall.cmd

REM Download Visual Studio Code
curl -L "https://update.code.visualstudio.com/latest/win32-x64-user/stable" --output C:\users\WDAGUtilityAccount\Desktop\vscode.exe

REM Install and run Visual Studio Code
C:\users\WDAGUtilityAccount\Desktop\vscode.exe /verysilent /suppressmsgboxes

VSCode.wsb

<Configuration>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>C:\SandboxScripts</HostFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
    <MappedFolder>
      <HostFolder>C:\CodingProjects</HostFolder>
      <ReadOnly>false</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>C:\Users\WDAGUtilityAccount\Desktop\SandboxScripts\VSCodeInstall.cmd</Command>
  </LogonCommand>
</Configuration>

运行后VSCode.wsb,沙盒中自动下载并运行vscode

如何使用你的配置启动沙盒文件

完成后,保存文件并为其提供 .wsb 文件扩展名。例如,如果文本编辑器将其另存为沙盒.txt,请将其另存为 Sandbox.wsb。若要使用你的设置启动 Windows 沙盒,请双击 .wsb 文件。你可以将其放在桌面上,也可以在“开始”菜单中创建它的快捷方式。

相关推荐

30天学会Python编程:16. Python常用标准库使用教程

16.1collections模块16.1.1高级数据结构16.1.2示例...

强烈推荐!Python 这个宝藏库 re 正则匹配

Python的re模块(RegularExpression正则表达式)提供各种正则表达式的匹配操作。...

Python爬虫中正则表达式的用法,只讲如何应用,不讲原理

Python爬虫:正则的用法(非原理)。大家好,这节课给大家讲正则的实际用法,不讲原理,通俗易懂的讲如何用正则抓取内容。·导入re库,这里是需要从html这段字符串中提取出中间的那几个文字。实例一个对...

Python数据分析实战-正则提取文本的URL网址和邮箱(源码和效果)

实现功能:Python数据分析实战-利用正则表达式提取文本中的URL网址和邮箱...

python爬虫教程之爬取当当网 Top 500 本五星好评书籍

我们使用requests和re来写一个爬虫作为一个爱看书的你(说的跟真的似的)怎么能发现好书呢?所以我们爬取当当网的前500本好五星评书籍怎么样?ok接下来就是学习python的正确姿...

深入理解re模块:Python中的正则表达式神器解析

在Python中,"re"是一个强大的模块,用于处理正则表达式(regularexpressions)。正则表达式是一种强大的文本模式匹配工具,用于在字符串中查找、替换或提取特定模式...

如何使用正则表达式和 Python 匹配不以模式开头的字符串

需要在Python中使用正则表达式来匹配不以给定模式开头的字符串吗?如果是这样,你可以使用下面的语法来查找所有的字符串,除了那些不以https开始的字符串。r"^(?!https).*&...

先Mark后用!8分钟读懂 Python 性能优化

从本文总结了Python开发时,遇到的性能优化问题的定位和解决。概述:性能优化的原则——优化需要优化的部分。性能优化的一般步骤:首先,让你的程序跑起来结果一切正常。然后,运行这个结果正常的代码,看看它...

Python“三步”即可爬取,毋庸置疑

声明:本实例仅供学习,切忌遵守robots协议,请不要使用多线程等方式频繁访问网站。#第一步导入模块importreimportrequests#第二步获取你想爬取的网页地址,发送请求,获取网页内...

简单学Python——re库(正则表达式)2(split、findall、和sub)

1、split():分割字符串,返回列表语法:re.split('分隔符','目标字符串')例如:importrere.split(',','...

Lavazza拉瓦萨再度牵手上海大师赛

阅读此文前,麻烦您点击一下“关注”,方便您进行讨论和分享。Lavazza拉瓦萨再度牵手上海大师赛标题:2024上海大师赛:网球与咖啡的浪漫邂逅在2024年的上海劳力士大师赛上,拉瓦萨咖啡再次成为官...

ArkUI-X构建Android平台AAR及使用

本教程主要讲述如何利用ArkUI-XSDK完成AndroidAAR开发,实现基于ArkTS的声明式开发范式在android平台显示。包括:1.跨平台Library工程开发介绍...

Deepseek写歌详细教程(怎样用deepseek写歌功能)

以下为结合DeepSeek及相关工具实现AI写歌的详细教程,涵盖作词、作曲、演唱全流程:一、核心流程三步法1.AI生成歌词-打开DeepSeek(网页/APP/API),使用结构化提示词生成歌词:...

“AI说唱解说影视”走红,“零基础入行”靠谱吗?本报记者实测

“手里翻找冻鱼,精心的布局;老漠却不言语,脸上带笑意……”《狂飙》剧情被写成歌词,再配上“科目三”背景音乐的演唱,这段1分钟30秒的视频受到了无数网友的点赞。最近一段时间随着AI技术的发展,说唱解说影...

AI音乐制作神器揭秘!3款工具让你秒变高手

在音乐创作的领域里,每个人都有一颗想要成为大师的心。但是面对复杂的乐理知识和繁复的制作过程,许多人的热情被一点点消磨。...

取消回复欢迎 发表评论: