Escapes do sandbox do Wasmtime: atualizar a CLI não corrige o runtime incorporado
Relacione dependências Wasmtime aos artefatos entregues, escolha a correção adequada e valide implantações com um fluxo de evidências Plexicus.
Além de ASPM
AppSec orientada por provas para equipes que desenvolvem com IA
A Plexicus usa AI Swarm Pentest para explorar caminhos autorizados da aplicação, validar o que é explorável e dar às equipes evidências para priorizar a remediação.
Explorar AI Swarm PentestA atualização do Wasmtime mais fácil de verificar pode ser a que sua aplicação não usa. Um desenvolvedor atualiza a ferramenta de linha de comando e verifica wasmtime --version. O serviço em produção continua incorporando uma dependência Rust antiga em seu próprio binário.
O problema também exige inventário e validação da implantação. A pergunta decisiva é: qual runtime compila os módulos não confiáveis e qual artefato implantado o contém?
Dois avisos com correções diferentes
Em 19 de outubro, dois avisos do Cranelift descreveram escapes do sandbox: overflow de índices SSA e compilação incorreta de br_table em aarch64. Aviso SSA · Aviso aarch64.
| Aviso | Versões afetadas | Correções publicadas |
|---|---|---|
| GHSA-897f-g5gm-fmxm | <36.0.19; >=37.0.0, <43.0.0 | 36.0.19, 43.0.0 |
| GHSA-mghf-wjfp-p5xm | <36.0.19; >=37.0.0, <48.0.7; >=49.0.0, <49.0.4 | 36.0.19, 48.0.7, 49.0.4 |
Considere as condições de backend e arquitetura de cada aviso. 43.0.0 corrige o primeiro problema, mas não é a correção do segundo. A tabela foi verificada em 27 de outubro de 2026. Ela não garante proteção contra vulnerabilidades posteriores. Escolha uma versão mantida após revisar os avisos atuais e a compatibilidade.
Encontre o runtime realmente entregue
Um serviço de plugins pode receber WebAssembly de clientes e obter Wasmtime diretamente, por dependência transitiva ou dentro de uma biblioteca pré-compilada. Seu responsável precisa identificar o artefato de produção, não apenas as ferramentas dos desenvolvedores.
Comece pelas entradas da compilação real. Em um workspace Rust, estes comandos ajudam na descoberta:
cargo tree --locked | rg 'wasmtime|cranelift'
cargo metadata --locked --format-version 1 > dependency-metadata.json
Use o workspace e a configuração corretos. Uma entrada não demonstra alcance em tempo de execução. Sua ausência também não exclui bibliotecas nativas baixadas ou binários de fornecedores. Registre essas limitações.
Para cada artefato relevante, registre repositório e commit, versão resolvida, arquitetura, backend, funcionalidades, tarefa de compilação e digest imutável. Identifique depois quais instâncias executam esse digest. Uma tag de imagem com múltiplas arquiteturas não demonstra o que um worker ARM executa.
Transforme inventário em decisão
Cada entrada relevante precisa de responsável e avaliação. O serviço recebe módulos não confiáveis? Quem compila: a aplicação, um worker separado ou o pipeline de implantação? Qual backend e destino são escolhidos? Se faltarem respostas, mantenha o estado desconhecido em vez de declarar que não está afetado.
O guia de segurança do Wasmtime explica seu sandbox e as interfaces do host. Uma meta de projeto não comprova a ausência de falhas em uma compilação específica.
Priorize caminhos de compilação afetados e alcançáveis. Justifique outros ambientes separadamente. Não aplique a condição aarch64 ao primeiro aviso nem suponha que uma mudança de configuração seja mitigação documentada para ambos.
Reconstrua, implante e verifique
Alterar o lockfile propõe uma correção. As evidências seguintes mostram o que realmente chegou ao serviço.
| Etapa | Evidência a preservar |
|---|---|
| Dependência | Versão resolvida e alteração revisada |
| Reconstrução | Configuração, tarefa bem-sucedida e digest |
| Implantação | Digest executado em cada arquitetura relevante |
| Teste funcional | Comportamento esperado dos plugins e regressões |
| Encerramento | Justificativa por aviso, responsável e lacunas restantes |
Inclua workers persistentes e artefatos de rollback. Trocar uma imagem no registro não substitui processos ativos. Um teste funcional bem-sucedido também não reproduz nem refuta, sozinho, um escape do compilador. Explique o que foi efetivamente verificado.
Como a Plexicus participa
A Plexicus XBOM apresenta inventários de software, criptografia e IA em um fluxo comum. Deep Code Analysis oferece contexto do fluxo de código e do impacto de negócio. Em uma demonstração de XBOM, pergunte como incorporar dependências resolvidas e evidências dos artefatos. Na revisão de código, examine como módulos dos clientes chegam à aplicação que incorpora o runtime.
Essas descrições não garantem descoberta automática de toda cópia do Wasmtime, reprodução de exploits do compilador ou cobertura completa de binários. Defina essas exigências no escopo e peça evidências para qualquer alegação de cobertura.
A cadeia útil é aviso → dependência → compilação → digest implantado → verificação. Uma captura isolada da versão não oferece essa ligação.
Precisa conectar inventário e correção? Solicite uma demonstração de XBOM ou conheça Deep Code Analysis. Traga um serviço, suas entradas de compilação e o digest implantado.