Sandbox do Navegador
O que é Sandbox do Navegador?
Sandbox do NavegadorCamada de isolamento ao nível do sistema operativo que confina o renderer e processos auxiliares do navegador para que código web comprometido não aceda ao sistema de ficheiros nem a outras aplicações.
A sandbox do navegador é o conjunto de mecanismos do sistema operativo que um navegador usa para restringir processos filhos menos confiáveis — renderers, processo GPU, serviço de rede — a um conjunto mínimo de capacidades. O Chromium apoia-se em job objects e níveis de integridade no Windows, no Seatbelt do macOS e no seccomp-bpf com namespaces de utilizador no Linux; o Firefox usa primitivas comparáveis. Mesmo que o JavaScript do atacante provoque corrupção de memória dentro do renderer, a sandbox impede o acesso arbitrário a ficheiros, a criação de processos e as syscalls sem uma segunda falha — um escape de sandbox.
Este requisito de duas falhas é visível no Pwn2Own. No evento de março de 2024, a entrada vencedora de Manfred Paul para o Chrome usou a CVE-2024-2887, uma falha de type confusion no motor WebAssembly do V8, para obter leitura/escrita no renderer — mas isso, por si só, permaneceu preso dentro do processo. O mesmo concurso revelou a CVE-2024-2886 (um use-after-free no WebCodecs) e a CVE-2024-3159 (leitura fora dos limites no V8). O Chrome acrescenta ainda outra camada de defesa com o Site Isolation, que coloca cada site no seu próprio renderer para atenuar fugas por execução especulativa ao estilo Spectre, e a sandbox de heap do V8 ("Ubercage"), que contém a corrupção mesmo antes de a sandbox do SO se aplicar.
Defesas que reforçam o modelo: manter os navegadores atualizados automaticamente, ativar o Site Isolation e as flags de sandbox reforçada, desativar plugins desnecessários e usar limites de processos por site para que o comprometimento de um único renderer não abranja várias origens.
flowchart TD
A[Página web maliciosa] --> B[Processo renderer<br/>não confiável, baixo privilégio]
B --> C{Falha de corrupção de memória?<br/>ex.: CVE-2024-2887}
C -->|Não| D[Ataque contido]
C -->|Sim| E[Leitura/escrita arbitrária no renderer]
E --> F{Sandbox de heap do V8<br/>+ sandbox do SO}
F -->|Sem falha de escape| G[Ainda confinado:<br/>sem ficheiros, sem syscalls]
F -->|Falha de escape de sandbox| H[Broker / kernel alcançado]
H --> I[Execução total de código no host]● Exemplos
- 01
Renderer do Chrome a correr como job object de baixa integridade com restrições de token no Windows.
- 02
Concorrentes no Pwn2Own encadeando um RCE do renderer com um escape de sandbox para obter execução total de código.
● Perguntas frequentes
O que é Sandbox do Navegador?
Camada de isolamento ao nível do sistema operativo que confina o renderer e processos auxiliares do navegador para que código web comprometido não aceda ao sistema de ficheiros nem a outras aplicações. Pertence à categoria Segurança de aplicações da cibersegurança.
O que significa Sandbox do Navegador?
Camada de isolamento ao nível do sistema operativo que confina o renderer e processos auxiliares do navegador para que código web comprometido não aceda ao sistema de ficheiros nem a outras aplicações.
Como se defender contra Sandbox do Navegador?
As defesas contra Sandbox do Navegador costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.
Quais são outros nomes para Sandbox do Navegador?
Nomes alternativos comuns: Sandbox do renderer.