PT-2026-90728 · Webassembly+3 · Wabt

CVE-2026-90648

·

Publicado

2026-09-12

·

Atualizado

2026-09-22

CVSS v4.0

7.1

Alta

VetorAV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:H/SA:H
Nome do Software Vulnerável e Versões Afetadas WebAssembly wabt versões anteriores a 1.0.42
Description Um problema no wasm2c permite a evasão de sandbox, principalmente em plataformas de 32 bits, através de um método conhecido como ataque de inversão de tabela (table flip). A função wasm rt allocate funcref table() em wasm2c/wasm-rt-impl-tableops.inc não verifica o valor de retorno de calloc(). Se a alocação da tabela funcref falhar, table->data permanece NULL enquanto table->size mantém a contagem de elementos declarada pelo convidado. Consequentemente, as verificações de limite são ignoradas e os acessos aos elementos da tabela resolvem-se em endereços de memória absolutos. Isso permite a leitura e escrita arbitrária na memória do processo hospedeiro e a execução arbitrária de código via table.get, table.set e call indirect, comprometendo o isolamento fornecido pelo wasm2c. Isso afeta aplicações que utilizam o wasm2c como limite de sandbox, como RLBox e WasmBoxC, incluindo a implementação do Firefox para as bibliotecas Graphite, Hunspell, Ogg, Expat e Woff2. A exploração geralmente requer a falha de alocação devido à pressão de memória, limitações de hosts de 32 bits, limites de espaço de endereçamento (RLIMIT AS) ou configurações específicas do kernel, como vm.overcommit memory=2.
Recommendations Atualize o WebAssembly wabt para a versão 1.0.42 ou posterior.

Exploit

Correção

Unchecked Return Value

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-90648

Produtos afetados

Wabt