IA Squad
BuscarEN
js · js-tomlCrítico

js-toml 1.1.0 e anteriores: vulnerabilidade de tempo quadrático em parseBigInt

js-toml até a versão 1.1.0 possui uma vulnerabilidade de tempo quadrático na função parseBigInt usada para literais hexadecimais, octais e binários. O loop manu

27 Jun 2026Leitura 1 minSeveridade: mexe agora

O que mudou

js-toml até a versão 1.1.0 possui uma vulnerabilidade de tempo quadrático na função parseBigInt usada para literais hexadecimais, octais e binários. O loop manual realiza O(n²) multiplicações de BigInt, e não há limite de tamanho nos literais, permitindo que um único literal hex de ~500 kB trave uma CPU por ~40 segundos.

Quem isso afeta

Qualquer aplicação que chame load() em entrada TOML controlada por atacante ou de terceiros, como endpoints de upload de configuração, sistemas CI/CD, plugins de IDE ou SaaS multi-inquilino.

O que fazer hoje

Atualize js-toml para uma versão corrigida (>= 1.2.0) ou aplique a correção sugerida: substitua parseBigInt por BigInt(intString) e adicione um limite de maxLiteralLength (ex.: 1000 dígitos).

A esteira
Coletado Auditado Redigido Publicado