← back
CVE-2020-8644criticalunder attackCWE-94

CVE-2020-8644

100Vexday Risk Score

Patch now. It under exploitation confirmed by CISA and has a working public exploit.

ssvc Actcvss 9.8epss 87%
from disclosure to weapon71 days
Published on NVDFeb 5
1st PoC+71d
metasploitFeb 5
CISA KEV+637d
exploitation probability
87%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
4 public exploit(s)
Action required by CISAfederal deadline: 2022-05-03

Apply updates per vendor instructions.

Summary

PlaySMS, plataforma web de gerenciamento de SMS, permite injeção de template do lado do servidor (SSTI) sem autenticação, levando à execução remota de código. A falha foi identificada por Lucas Rosevear (NCC Group) e está na lista KEV da CISA como exploração confirmada — o CVSS 9.8 aqui não é exagero, é pré-autenticação e execução total do servidor.

Technical detail

A vulnerabilidade é uma injeção de código (CWE-94) no motor de templates do PlaySMS. O advisory do fornecedor descreve de forma genérica que versões anteriores à 1.4.3 'não sanitizam entradas de uma string maliciosa'; a análise da NCC Group e o título do PoC no Packet Storm ('index.php Unauthenticated Template Injection Code Execution') indicam que o ponto de entrada é o index.php da aplicação, acessível sem login.

O problema estrutural é que dados controlados por um atacante (não autenticado) chegam ao mecanismo de renderização de templates do PlaySMS sem sanitização ou escaping adequado. Em SSTI clássica, isso permite que a sintaxe do template seja usada para invocar funções da linguagem subjacente (PHP) diretamente, em vez de apenas gerar HTML — resultado é execução arbitrária de código no contexto do processo web.

O fornecedor não publicou detalhes granulares sobre qual parâmetro ou fluxo específico injeta a string maliciosa no template; a página oficial de release apenas remete ao advisory da NCC Group e ao fórum do projeto. Sem o texto completo do advisory técnico (o conteúdo coletado da NCC Group não trouxe os detalhes de exploração, apenas a página institucional), não é possível apontar o parâmetro exato ou o trecho de código vulnerável — isso deve ser tratado como lacuna de informação pública, não como ausência de risco.

How it’s exploited

O vetor é HTTP, direto contra a aplicação web do PlaySMS, sem necessidade de autenticação nem de configuração não padrão conhecida — é isso que justifica AV:N/PR:N/UI:N no vetor CVSS. A complexidade de exploração é baixa: existe módulo Metasploit público, template Nuclei para varredura automatizada e PoC publicado no Packet Storm, o que reduz a exploração a uma requisição HTTP formatada corretamente contra a instância exposta.

A CISA confirma exploração ativa em campo (entrada no catálogo KEV, adicionada em 03/11/2021, com prazo de correção definido para 03/05/2022 para agências federais dos EUA). Isso indica varredura em massa da internet por instâncias PlaySMS desatualizadas, característica de vulnerabilidades pré-autenticação com PoC público e presença em ferramentas de scanning como Nuclei.

O resultado final da exploração é execução de código no servidor com os privilégios do processo web do PlaySMS — controle total da aplicação e potencial pivô para o sistema operacional subjacente, dependendo de como o serviço web está isolado.

Versions

Affected
PlaySMS anterior à versão 1.4.3 (todas as versões antes de 1.4.3, conforme descrição oficial do fornecedor).
Fixed in
PlaySMS 1.4.3 e posteriores.

How to protect

A correção do fornecedor é a atualização para PlaySMS 1.4.3 ou posterior; o anúncio oficial do projeto classifica a falha como severa e recomenda upgrade imediato de qualquer instalação anterior.

Se a atualização não for viável de imediato, o controle compensatório realista é restringir o acesso à interface web do PlaySMS (rede interna, VPN, allowlist de IP, autenticação em camada adicional via proxy reverso), já que a falha é pré-autenticação — bloquear o acesso público remove a maior parte do risco de exploração oportunista até a atualização ser aplicada. Não há flag de configuração ou parâmetro documentado pelo fornecedor que desative o comportamento vulnerável sem atualizar o código; tratar isso como mitigável só por configuração do próprio PlaySMS é o mito a evitar aqui.

Dado o status de exploração ativa confirmada pela CISA, instâncias expostas à internet sem atualização devem ser tratadas como comprometidas até prova em contrário, não apenas como 'vulneráveis'.

How to detect

Não há assinatura de log oficialmente publicada pelo fornecedor ou pela NCC Group nas fontes disponíveis. Como indicador prático, procurar em logs de acesso web requisições para index.php contendo sintaxe típica de injeção de template (delimitadores de template, tentativas de chamada de função, cadeias de escape incomuns) originadas sem sessão autenticada válida, e correlacionar com a presença de módulos Metasploit ou templates Nuclei para esta CVE, que geram assinaturas de requisição relativamente características. A ausência de padrão de log documentado publicamente é, em si, uma limitação relevante para quem depende só de SIEM sem regra dedicada.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
PlaySMS before 1.4.3 does not sanitize inputs from a malicious string.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected products
n/a · n/a
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.