← voltar
CVE-2021-27852criticalsob ataqueCWE-502

CVE-2021-27852

70Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA.

ssvc Actcvss 9.8epss 32%
da publicação à arma
Publicada no NVD27 de mai.
CISA KEV+319d
probabilidade de exploração
32%top 2% das CVEs
exploração observada
simCISA + VulnCheck
Ação exigida pela CISAprazo federal: 2022-05-02

Versions 6 and earlier for this product are end-of-life and must be removed from agency networks. Versions 7 and later are not considered vulnerable.

Resumo

Checkbox Survey, aplicação ASP.NET para criação de formulários e pesquisas, implementa sua própria versão de View State e desserializa esse dado com LosFormatter sem validação de integridade, permitindo execução remota de código não autenticada. A falha está confirmada como explorada ativamente e consta no catálogo KEV da CISA, que determina a remoção imediata de versões 6 e anteriores — não há prazo de "atualizar quando possível" aqui, o produto é tratado como fim de vida.

Detalhamento técnico

O ASP.NET nativo usa View State para persistir estado de página entre requisições, protegido por um Message Authentication Code (MAC) que impede alteração do payload serializado pelo cliente. O Checkbox Survey, em vez de usar esse mecanismo padrão, implementa sua própria lógica de View State: recebe um parâmetro _VSTATE na requisição e o desserializa diretamente via System.Web.UI.LosFormatter. Como essa manipulação é feita pelo código da aplicação e não pelo pipeline padrão do ASP.NET, a configuração de MAC do servidor é ignorada — o dado nunca passa pela verificação de assinatura que normalmente protegeria contra adulteração.

Isso é uma Deserialization of Untrusted Data (CWE-502) clássica: o atacante controla integralmente o conteúdo do campo _VSTATE, e o LosFormatter desserializa qualquer objeto .NET serializado ali, sem checagem de tipo ou origem. Em cenários de desserialização insegura no .NET, isso tipicamente permite construir cadeias de gadgets (ObjectDataProvider e afins, dependendo do que está carregado no AppDomain) que resultam em execução arbitrária de código no contexto do processo do servidor web.

O ponto crítico é a ausência de MAC: mesmo que o ASP.NET subjacente estivesse configurado corretamente para proteger View State nativo, a lógica customizada do Checkbox Survey contorna essa proteção porque ela mesma faz o parsing e a desserialização do parâmetro, fora do fluxo que o framework protegeria.

Como é explorada

O vetor é uma requisição HTTP especialmente construída contendo um parâmetro _VSTATE malicioso, enviada a qualquer instância pública do Checkbox Survey vulnerável. Não é necessária autenticação, interação do usuário, nem configuração não padrão — a falha está no comportamento padrão da aplicação em qualquer instalação de versão anterior à 7.0. A complexidade de ataque é baixa: quem entende a mecânica de desserialização de View State no .NET (LosFormatter/gadgets conhecidos do ecossistema) tem tudo que precisa para montar o payload.

O resultado final é execução de código arbitrário com os privilégios do processo do servidor web (IIS/w3wp.exe, tipicamente). Isso dá ao atacante controle equivalente a comprometimento do host onde a aplicação corre, não apenas da aplicação em si.

A CISA confirma exploração em campo (entrada no KEV) e o CERT/CC também registra relatos de exploração ativa. Não há detalhes públicos sobre quais campanhas ou atores usaram a falha, apenas a confirmação de que ela foi/é explorada.

Versões

Afetadas
Checkbox Survey versões anteriores à 7.0 (linha 6.x e anteriores).
Corrigidas em
Checkbox Survey 7.0 e posteriores (remoção do uso de View State customizado elimina a vulnerabilidade).

Como se proteger

A correção do fornecedor é migrar para Checkbox Survey 7.0 ou posterior, versão que eliminou o uso de View State customizado — a partir dela a vulnerabilidade não existe estruturalmente, não é uma configuração que se liga ou desliga. Não há patch para a linha 6.x: o fornecedor não mantém mais essa versão.

Para quem não pode migrar imediatamente, a única mitigação real reconhecida pelo CERT/CC e pela CISA é remover o Checkbox Survey (versão 6 ou anterior) dos sistemas expostos. Não existe workaround de configuração documentado que neutralize a falha mantendo a versão vulnerável em produção — como a checagem de MAC do ASP.NET é ignorada pela lógica própria da aplicação, ajustar configurações do IIS/ASP.NET (como forçar MAC) não resolve, porque o problema está no código do CheckboxWeb.dll, não no framework.

Controles compensatórios como WAF podem reduzir a superfície bloqueando padrões conhecidos do parâmetro _VSTATE malformado, mas isso é mitigação de perímetro, não remediação — a CISA determina remoção do software, não apenas isolamento de rede, para agências federais dos EUA sob a diretriz do KEV.

Como detectar

Sinal de tentativa de exploração em logs de acesso web: requisições HTTP contendo o parâmetro _VSTATE com payloads anormalmente grandes, malformados ou com estrutura de dados serializados .NET (frequentemente reconhecíveis por prefixos binários típicos de LosFormatter/BinaryFormatter) fora do padrão esperado de um campo de estado de formulário legítimo. Erros de desserialização nos logs de aplicação/IIS relacionados a LosFormatter ou exceções de tipo inesperado no processamento de _VSTATE também são indício.

Não há assinatura única e confiável publicada pelo fornecedor ou pelo CERT/CC para identificar exploração retroativamente — a detecção depende de inspeção manual de logs de requisição em busca do parâmetro _VSTATE anômalo e de monitoramento de comportamento anômalo do processo do servidor web (spawns de processo inesperados, por exemplo) após requisições a endpoints do Checkbox Survey.

Pesquisado e redigido com IA a partir do advisory do fornecedor e de análises públicas, com as fontes acima. Confira sempre a versão corrigida no advisory oficial antes de agir.
Deserialization of Untrusted Data vulnerability in CheckboxWeb.dll of Checkbox Survey allows an unauthenticated remote attacker to execute arbitrary code. This issue affects: Checkbox Survey versions prior to 7.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Produtos afetados
Checkbox · Survey