Configuration du Bac à sable Windows

Windows Le bac à sable (sandbox) prend en charge les fichiers de configuration simples, qui fournissent un ensemble minimal de paramètres de personnalisation pour le bac à sable. Cette fonctionnalité peut être utilisée avec Windows 10 build 18342 ou Windows 11. Windows Les fichiers de configuration de bac à sable sont au format XML et sont associés au bac à sable via .wsb l’extension de fichier.

Un fichier de configuration permet à l’utilisateur de contrôler les aspects suivants du Windows bac à sable :

  • vGPU (virtualisé GPU): activez ou désactivez le GPU virtualisé. Si vGPU est désactivé, le bac à sable utilise Windows warp (Advanced Rasterization Platform).
  • Mise enréseau : activez ou désactivez l’accès réseau dans le bac à sable.
  • Dossiers mappés : partager des dossiers à partir de l’hôte avec des autorisations de lecture ou d’écriture. Notez que l’exposition des répertoires hôtes peut permettre à des logiciels malveillants d’affecter le système ou de voler des données.
  • Commande d’logo: commande exécutée au démarrage du Windows sandbox.
  • Entrée audio: partage l’entrée du microphone de l’hôte dans le bac à sable.
  • Entrée vidéo : partage l’entrée webcam de l’hôte dans le bac à sable.
  • Client protégé : place des paramètres de sécurité accrus sur la session RDP dans le bac à sable.
  • Redirection d’imprimante: partage les imprimantes de l’hôte dans le bac à sable.
  • Redirection du Presse-papiers: partage le Presse-papiers hôte avec le bac à sable (sandbox) afin que le texte et les fichiers soient renvoyés dans les deux sens.
  • Mémoire en Mo: quantité de mémoire, en mégaoctets, à affecter au bac à sable.

Création d’un fichier de configuration

Pour créer un fichier de configuration simple :

  1. Ouvrez un éditeur de texte simple ou un éditeur de code source (par exemple, Bloc-notes, Visual Studio Code, etc.)

  2. Insérez les lignes suivantes :

    <Configuration>
    </Configuration>
    
  3. Ajoutez le texte de configuration approprié entre les deux lignes. Pour plus d’informations, voir la syntaxe correcte et les exemples ci-dessous.

  4. Enregistrez le fichier avec le nom souhaité, mais assurez-vous que son extension de nom de fichier est .wsb . Dans Bloc-notes, vous devez entourer le nom de fichier et l’extension entre guillemets doubles, par "My config file.wsb" exemple.

Utilisation d’un fichier de configuration

Pour utiliser un fichier de configuration, double-cliquez dessus pour démarrer Windows sandbox en fonction de ses paramètres. Vous pouvez également l’appeler via la ligne de commande, comme illustré ici :

C:\Temp> MyConfigFile.wsb 

Mots clés, valeurs et limites

vGPU

Active ou désactive le partage GPU.

<vGPU>value</vGPU>

Valeurs prises en charge :

  • Enable: active la prise en charge du vGPU dans le bac à sable( sandbox).
  • Désactiver : désactive la prise en charge du vGPU dans le bac à sable( sandbox). Si cette valeur est définie, le bac à sable utilise le rendu logiciel, qui peut être plus lent que le GPU virtualisé.
  • Valeur par défaut Il s’agit de la valeur par défaut pour la prise en charge vGPU. Actuellement, cela signifie que le vGPU est désactivé.

Notes

L’activation du GPU virtualisé peut potentiellement augmenter la surface d’attaque du bac à sable.

Mise en réseau

Active ou désactive la mise en réseau dans le bac à sable. Vous pouvez désactiver l’accès réseau pour réduire la surface d’attaque exposée par le bac à sable.

<Networking>value</Networking>

Valeurs prises en charge :

  • Désactiver : désactive la mise en réseau dans le bac à sable.
  • Par défaut: il s’agit de la valeur par défaut pour la prise en charge de la mise en réseau. Cette valeur active la mise en réseau en créant un commutateur virtuel sur l’hôte et y connecte le bac à sable via une carte réseau virtuelle.

Notes

L’activation de la mise en réseau peut exposer des applications nontrues au réseau interne.

Dossiers mappés

Tableau de dossiers, chacun représentant un emplacement sur l’ordinateur hôte qui sera partagé dans le bac à sable à l’emplacement spécifié. Pour l’instant, les chemins d’accès relatifs ne sont pas pris en charge. Si aucun chemin d’accès n’est spécifié, le dossier est mappé sur le bureau de l’utilisateur du conteneur.

<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: spécifie le dossier sur l’ordinateur hôte à partager dans le bac à sable. Notez que le dossier doit déjà exister sur l’hôte, sinon le conteneur ne pourra pas démarrer.

SandboxFolder : spécifie la destination dans le bac à sable (sandbox) à macher le dossier. Si le dossier n’existe pas, il est créé. Si aucun dossier bac à sable n’est spécifié, le dossier est mappé sur le bureau du conteneur.

ReadOnly : si true, applique l’accès en lecture seule au dossier partagé à partir du conteneur. Valeurs prise en charge : true / false. A la valeur par défaut false.

Notes

Les fichiers et dossiers mappés à partir de l’hôte peuvent être compromis par les applications dans le bac à sable (sandbox) ou potentiellement affecter l’hôte.

Commande d' logon

Spécifie une commande unique qui sera automatiquement invoquée après l' connecter au bac à sable. Les applications dans le bac à sable (sandbox) sont exécutés sous le compte d’utilisateur conteneur.

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

Commande: chemin d’accès à un exécutable ou à un script à l’intérieur du conteneur qui sera exécuté après la connexion.

Notes

Bien que les commandes très simples fonctionnent (par exemple, le lancement d’un exécutable ou d’un script), des scénarios plus complexes impliquant plusieurs étapes doivent être placés dans un fichier de script. Ce fichier de script peut être mappé dans le conteneur via un dossier partagé, puis exécuté via la directive LogonCommand.

Entrée audio

Active ou désactive l’entrée audio dans le bac à sable.

<AudioInput>value</AudioInput>

Valeurs prises en charge :

  • Enable: active l’entrée audio dans le bac à sable. Si cette valeur est définie, le bac à sable (sandbox) peut recevoir une entrée audio de la part de l’utilisateur. Les applications qui utilisent un microphone peuvent nécessiter cette fonctionnalité.
  • Désactiver : désactive l’entrée audio dans le bac à sable. Si cette valeur est définie, le bac à sable ne peut pas recevoir d’entrée audio de la part de l’utilisateur. Les applications qui utilisent un microphone peuvent ne pas fonctionner correctement avec ce paramètre.
  • Par défaut: il s’agit de la valeur par défaut pour la prise en charge des entrées audio. Actuellement, cela signifie que l’entrée audio est activée.

Notes

L’exposition de l’entrée audio de l’hôte au conteneur peut avoir des implications en matière de sécurité.

Entrée vidéo

Active ou désactive l’entrée vidéo dans le bac à sable.

<VideoInput>value</VideoInput>

Valeurs prises en charge :

  • Enable: active l’entrée vidéo dans le bac à sable.
  • Désactiver : désactive l’entrée vidéo dans le bac à sable. Les applications qui utilisent l’entrée vidéo peuvent ne pas fonctionner correctement dans le bac à sable.
  • Par défaut: il s’agit de la valeur par défaut pour la prise en charge des entrées vidéo. Actuellement, cela signifie que l’entrée vidéo est désactivée. Les applications qui utilisent l’entrée vidéo peuvent ne pas fonctionner correctement dans le bac à sable.

Notes

L’exposition de l’entrée vidéo hôte au conteneur peut avoir des implications en matière de sécurité.

Client protégé

Applique des paramètres de sécurité supplémentaires au client Bureau à distance en bac à sable, réduisant ainsi sa surface d’attaque.

<ProtectedClient>value</ProtectedClient>

Valeurs prises en charge :

  • Enable: s’Windows bac à sable en mode client protégé. Si cette valeur est définie, le bac à sable s’exécute avec des atténuations de sécurité supplémentaires activées.
  • Disable : exécute le bac à sable en mode standard sans mesures de sécurité supplémentaires.
  • Pardéfaut : il s’agit de la valeur par défaut pour le mode client protégé. Actuellement, cela signifie que le bac à sable ne s’exécute pas en mode client protégé.

Notes

Ce paramètre peut restreindre la possibilité pour l’utilisateur de copier/coller des fichiers dans et hors du bac à sable.

Redirection d’imprimante

Active ou désactive le partage d’imprimante de l’hôte dans le bac à sable.

<PrinterRedirection>value</PrinterRedirection>

Valeurs prises en charge :

  • Enable: active le partage d’imprimantes hôtes dans le bac à sable.
  • Désactiver : désactive la redirection de l’imprimante dans le bac à sable. Si cette valeur est définie, le bac à sable ne peut pas afficher les imprimantes de l’hôte.
  • Par défaut: il s’agit de la valeur par défaut pour la prise en charge de la redirection d’imprimante. Actuellement, cela signifie que la redirection d’imprimante est désactivée.

Redirection du Presse-papiers

Active ou désactive le partage du Presse-papiers hôte avec le bac à sable.

<ClipboardRedirection>value</ClipboardRedirection>

Valeurs prises en charge :

  • Désactiver : désactive la redirection du Presse-papiers dans le bac à sable. Si cette valeur est définie, la copie/coller dans et hors du bac à sable sera restreinte.
  • Pardéfaut : il s’agit de la valeur par défaut pour la redirection du Presse-papiers. Actuellement, la copie/coller entre l’hôte et le bac à sable (sandbox) est autorisée sous Default.

Mémoire en Mo

Spécifie la quantité de mémoire que le bac à sable peut utiliser en mégaoctets (Mo).

<MemoryInMB>value</MemoryInMB>

Si la valeur de mémoire spécifiée est insuffisante pour démarrer un bac à sable, elle sera automatiquement augmentée jusqu’à la quantité minimale requise.

Exemple1

Le fichier de config suivant peut être utilisé pour tester facilement les fichiers téléchargés à l’intérieur du bac à sable. Pour ce faire, la mise en réseau et le vGPU sont désactivés et le bac à sable (sandbox) est autorisé à accéder en lecture seule au dossier de téléchargements partagés. Pour des raisons pratiques, la commande d’ouverture de ligne ouvre le dossier de téléchargements à l’intérieur du bac à sable (sandbox) au moment de démarrer.

Downloads.wsb

<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>

Exemple2

Le fichier de configuration suivant installe Visual Studio Code dans le bac à sable, ce qui nécessite une configuration LogonCommand un peu plus complexe.

Deux dossiers sont mappés dans le bac à sable ; Le premier (SandboxScripts) contient VSCodeInstall.cmd, qui installera et exécutera Visual Studio Code. Le second dossier (CodingProjects) est supposé contenir des fichiers de projet que le développeur souhaite modifier à l’aide de Visual Studio Code.

Avec le script Visual Studio Code programme d’installation déjà mappé dans le bac à sable, logonCommand peut le référencer.

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>