CveTest
Caso de teste para replicar a falha (crash) do Node.JS V0.10.31 v8 backport CVE-2013-6668.
O teste chama um procedimento armazenado SQL ("GetSomething") para recuperar dados de uma tabela ("Table1") no banco de dados "SQLDB". A falha ocorre quando há mais de 52 linhas retornadas e após fazer a mesma chamada várias vezes.
Ambiente
- Windows 7 64-bit
- MS SQL 2005
- Node.JS V0.10.31 x64
- Módulo tedious do Node V1.4.3 ou anterior
- Modo release do node: o script simplesmente termina inesperadamente sem nenhum erro explícito impresso.
- Modo debug do node: uma assertiva e stack trace é obtida.
- Modo debug do Node com patch temporário proposto em Node.JS Issue #8208: ainda falha como acima.
- Modo release está ok.
- A assertiva encontrada está em HInstruction::Verify(), que está disponível apenas na compilação DEBUG. Portanto, os códigos de compilação release alternativos parecem não sofrer com o patch do CVE.
- Node V0.10.31 com deps/v8 do V0.10.30: Sem falha, funciona perfeitamente.
Assim, parece que o patch backport do v8 CVE-2013-6668 é o que está causando o problema.
Talvez Relacionado