Guias e Tutoriais

Código de IA no Windows Sandbox: rede desligada e arquivos somente leitura

Ilustração editorial de código sendo testado em uma cápsula virtual com rede desligada e pasta somente leitura

Receber um script pronto de uma IA cria uma tentação simples: copiar, colar e executar para ver se funciona. O problema é que um comando pode apagar arquivos, ler credenciais, instalar componentes, abrir conexões ou alterar configurações mesmo quando parece curto e bem explicado. O Windows Sandbox oferece um ambiente descartável para fazer uma primeira inspeção prática sem começar pelo computador de trabalho.

Neste guia, você vai habilitar o Windows Sandbox, preparar uma configuração com rede e área de transferência desligadas, compartilhar somente uma pasta de entrada em modo de leitura e executar o código dentro desse ambiente. O resultado esperado é um teste reproduzível que mostra o que o script tenta fazer, quais erros produz e quais dependências pede, sem conceder acesso automático aos seus documentos, contas ou rede local.

Limite importante: Windows Sandbox reduz exposição, mas não prova que um código é seguro. Ele também não substitui leitura do código, antivírus, política corporativa, revisão de dependências ou uma máquina virtual dedicada para análise de malware. Não use este procedimento com amostras sabidamente maliciosas.

O que o Windows Sandbox isola

A visão geral oficial do Windows Sandbox descreve um ambiente leve, limpo e descartável, executado com um kernel separado por virtualização de hardware. Ao fechar a janela e confirmar o encerramento, o conteúdo criado dentro dela é descartado.

Isso é útil para uma primeira execução porque alterações feitas no sistema convidado não viram instalações permanentes no host. Ainda assim, os canais que você habilita importam. Por padrão, o Sandbox pode ter rede e área de transferência disponíveis. Uma pasta mapeada também cria uma ponte explícita com o host. Por isso, abrir o aplicativo sem configuração não é a opção mais restrita para código desconhecido.

Pré-requisitos

  • Windows 11 ou Windows 10 versão 1903 ou posterior;
  • edição Pro, Enterprise ou Education compatível com Windows Sandbox;
  • arquitetura AMD64 ou Arm64 compatível;
  • virtualização habilitada no firmware;
  • pelo menos 4 GB de RAM, com 8 GB recomendados pela Microsoft;
  • ao menos 1 GB de espaço livre e dois núcleos de CPU;
  • permissão administrativa para habilitar o recurso;
  • um arquivo de código sem segredos, dados de clientes ou credenciais.

A página Instalar o Windows Sandbox reúne os requisitos atuais e explica que, em uma máquina virtual, a virtualização aninhada precisa estar disponível. Se a opção Windows Sandbox não aparecer, não tente contornar a limitação com uma edição não suportada.

Passo 1: leia o código antes de executá-lo

Abra o arquivo como texto. Procure comandos de exclusão, gravação fora da pasta esperada, downloads, instalação de pacotes, chamadas de rede, acesso a variáveis de ambiente, navegadores, cofres de credenciais, chaves SSH, tokens, serviços, tarefas agendadas e elevação administrativa.

Peça à IA uma explicação linha a linha, mas trate a explicação como hipótese. Confirme os comandos na documentação do sistema e das ferramentas envolvidas. Se o script estiver ofuscado, montar comandos a partir de texto codificado ou tentar desabilitar proteções, pare. O Sandbox não transforma comportamento deliberadamente perigoso em teste comum.

Registre também a origem do código, o prompt usado, o modelo ou ferramenta que o gerou, a data e o hash SHA-256 do arquivo. O guia Instalador de IA no Windows: confira assinatura, hash e reputação mostra como calcular SHA-256 sem executar o arquivo.

Passo 2: habilite o Windows Sandbox

No menu Iniciar, procure por Ativar ou desativar recursos do Windows. Marque Windows Sandbox, confirme e reinicie se o Windows solicitar. A alternativa oficial em PowerShell exige uma sessão aberta como administrador:

Enable-WindowsOptionalFeature -FeatureName "Containers-DisposableClientVM" -All -Online

Depois da instalação, abra Windows Sandbox uma vez pelo menu Iniciar. Essa abertura confirma que o hipervisor funciona, mas ainda usa os padrões do aplicativo. Feche a janela antes de seguir para a configuração restrita.

Passo 3: prepare uma pasta de entrada mínima

Crie no host a pasta C:\Sandbox\Entrada. Coloque nela somente o script que será avaliado e, se necessário, entradas fictícias criadas para o teste. Não compartilhe Downloads, Documentos, Desktop, um repositório real ou a pasta de um cliente inteiro.

Remova arquivos de configuração como .env, perfis de nuvem, certificados, bancos locais, cookies e qualquer dado que permita autenticação. Se o script precisa de uma chave real para funcionar, este teste ainda não está pronto. Substitua a integração por dados simulados ou use um ambiente de desenvolvimento isolado e autorizado.

Passo 4: crie um arquivo WSB restrito

Abra o Bloco de Notas no host e salve o conteúdo abaixo como TesteCodigoIA.wsb. Ajuste apenas o caminho de HostFolder se você criou a pasta em outro local. Use um caminho absoluto.

<Configuration>
  <VGpu>Disable</VGpu>
  <Networking>Disable</Networking>
  <AudioInput>Disable</AudioInput>
  <VideoInput>Disable</VideoInput>
  <PrinterRedirection>Disable</PrinterRedirection>
  <ClipboardRedirection>Disable</ClipboardRedirection>
  <ProtectedClient>Enable</ProtectedClient>
  <MemoryInMB>4096</MemoryInMB>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>C:\Sandbox\Entrada</HostFolder>
      <SandboxFolder>C:\Entrada</SandboxFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>explorer.exe C:\Entrada</Command>
  </LogonCommand>
</Configuration>

A documentação Usar e configurar o Windows Sandbox com arquivo WSB define cada opção. Rede desligada reduz a superfície exposta à rede interna. Área de transferência desligada restringe copiar e colar entre host e Sandbox. A pasta mapeada com ReadOnly igual a true impede gravação comum nela a partir do ambiente convidado.

ProtectedClient adiciona isolamento ao canal usado pela sessão remota, mas pode restringir recursos. VGpu desligada evita compartilhar a GPU virtualizada, o que pode reduzir desempenho. Esses controles têm custo funcional e não devem ser descritos como garantia absoluta.

Passo 5: confirme os canais antes do teste

Dê dois cliques no arquivo TesteCodigoIA.wsb. Quando o ambiente abrir, confirme quatro condições antes de executar o código:

  • o Explorador abriu C:\Entrada;
  • o arquivo de teste aparece, mas a pasta não aceita gravação;
  • colar um texto do host não funciona;
  • um acesso simples à internet não funciona.

Não desative controles apenas para fazer o script avançar. Se ele depende de internet, registre essa dependência como resultado do teste. Depois, decida separadamente se uma segunda rodada com rede é justificável e em qual ambiente ela pode ocorrer.

Passo 6: execute com a menor permissão possível

Abra o terminal disponível no Sandbox ou o interpretador adequado ao arquivo. Desde o Windows 11 versão 24H2, a Microsoft informa que alguns aplicativos de caixa de entrada, incluindo Terminal e Bloco de Notas, podem não estar presentes no Sandbox. Use as ferramentas que realmente aparecem no ambiente, sem assumir que a interface será idêntica à do host.

Comece por operações de leitura ou validação de sintaxe, quando a linguagem oferecer essa opção. Só então execute com dados fictícios. Não forneça credenciais, não entre em contas e não monte unidades adicionais. Observe arquivos criados, mensagens, processos, solicitações de privilégio e tentativas de conexão.

O ambiente descartável não é um motivo para aceitar elevação administrativa sem entender a necessidade. Se o código exige administrador para uma tarefa que deveria apenas transformar texto ou analisar um arquivo, trate isso como sinal de revisão.

Passo 7: registre o resultado sem abrir uma ponte de escrita

Com a pasta de entrada em somente leitura e a área de transferência desligada, a saída permanece dentro do Sandbox. Para a primeira triagem, anote manualmente o código de saída, a mensagem de erro e os nomes dos artefatos criados. Uma captura pode ajudar, desde que não contenha informações sensíveis.

Evite mapear imediatamente uma pasta de saída com escrita. A própria documentação alerta que arquivos e pastas mapeados podem ser afetados por aplicativos executados no Sandbox. Se for indispensável extrair um resultado, use uma pasta vazia criada apenas para esse teste, revise o código primeiro e trate todo arquivo devolvido como não confiável até nova inspeção.

Passo 8: feche e repita de forma limpa

Feche o Windows Sandbox e confirme o descarte. Uma nova abertura começa em um ambiente limpo. Isso permite repetir o teste após uma mudança no código sem carregar instalações, arquivos ou configurações da rodada anterior.

Compare as duas execuções usando as mesmas entradas fictícias. Se o resultado mudar sem alteração documentada, investigue dependências de tempo, aleatoriedade, rede, estado global ou pacote externo. Um teste reproduzível é mais útil do que uma execução que apenas terminou sem erro.

Quando a rede pode ser necessária

Instaladores, gerenciadores de pacotes e chamadas de API precisam de rede em alguns cenários. A coleção oficial de configurações de exemplo mostra tanto um teste de download com rede desligada quanto um cenário que baixa o Visual Studio Code.

Esses exemplos demonstram capacidade técnica, não uma autorização genérica. Habilitar rede pode expor o código à rede interna e permitir envio de dados. Para código desconhecido, prefira baixar dependências separadamente de fontes oficiais, verificar o que será usado e criar outra rodada com escopo explícito. Em organização, envolva a equipe de segurança antes de conectar uma amostra suspeita.

Erros comuns

Windows Sandbox não aparece: confira edição do Windows, versão, virtualização no firmware e requisitos de hardware. Em máquinas virtuais, confirme suporte à virtualização aninhada.

“No hypervisor was found”: a página Solucionar problemas do Windows Sandbox orienta verificar o hipervisor e a habilitação do recurso. O Sandbox usa o hipervisor Hyper-V.

A pasta não abre: HostFolder precisa existir e usar caminho absoluto. Revise também erros de XML e permissões locais.

O script não consegue salvar: isso é esperado na pasta de entrada somente leitura. Salve resultados no disco interno descartável do Sandbox ou planeje uma pasta de saída vazia e temporária após revisão.

O pacote não instala: a rede está desligada. Não mude para Enable sem registrar por que o acesso é necessário, quais destinos serão usados e quais dados podem sair.

Configuração bloqueada pela empresa: políticas podem impor valores. Não tente burlá-las. Leve o arquivo WSB e o objetivo do teste à equipe responsável.

O que este teste não cobre

O procedimento não comprova ausência de vulnerabilidades, não analisa profundamente malware, não garante que uma dependência seja confiável e não representa o comportamento em produção. Um script pode se comportar de forma diferente quando encontra rede, credenciais, arquivos reais, privilégios maiores ou outra versão de linguagem.

Também não teste segredos usando valores reais. Para projetos de clientes, mantenha contextos separados conforme o guia Como separar arquivos e contextos de clientes antes de usar IA. Se o código pede conexão com arquivos e contas, revise o escopo com Como revisar permissões antes de conectar agentes de IA.

Checklist antes de executar

  • o código foi lido como texto e sua origem foi registrada;
  • nenhum segredo, dado real ou credencial acompanha o teste;
  • Windows Sandbox atende aos requisitos e abre corretamente;
  • a rede está desligada;
  • a área de transferência está desligada;
  • áudio, vídeo, impressora e vGPU estão desligados quando não são necessários;
  • a pasta do host contém somente entradas mínimas e está em leitura;
  • o teste usa dados fictícios e menor privilégio;
  • erros, dependências e efeitos observados serão registrados;
  • o Sandbox será fechado e descartado após a rodada;
  • qualquer saída extraída receberá nova inspeção;
  • a aprovação final continuará separada do teste técnico.

O resultado útil não é “rodou no Sandbox”. É uma lista de comportamentos observados e perguntas resolvidas: tentou usar rede, pediu administrador, gravou onde deveria, exigiu dependências previstas e produziu a saída esperada? Com canais restritos e entradas fictícias, você troca a confiança no texto da IA por uma primeira evidência operacional, sem entregar de saída o ambiente real.

RADAR BASTIDORES

IA muda rápido. Critério não.

Estamos preparando uma seleção editorial de novidades, ferramentas e guias que realmente merecem atenção.

Escolha apenas o canal pelo qual deseja receber novidades. Nome e demais campos são opcionais.

Os dados ficam privados no WordPress e não são vendidos. Informe ao menos e-mail, celular ou rede social.