← volver
CVE-2019-3396criticalbajo ataqueransomwareCWE-22

CVE-2019-3396

100Vexday Risk Score

Corrige ahora. Ella está bajo explotación confirmada por CISA, tiene exploit funcional público y 1 grupo(s) de amenaza la utilizan.

ssvc Actcvss 9.8epss 100%
de la publicación al arma15 días
Publicada en NVD25 mar
1ª PoC+15d
metasploit25 mar
CISA KEV+954d
probabilidad de explotación
100%top 1% de las CVE
explotación observada
CISA + VulnCheck
1 grupo(s)38 exploit(s) público(s)
Quién la explota1

Grupos conocidos por explotar esta vulnerabilidad (atribución MITRE ATT&CK).

Acción exigida por CISAplazo federal: 2022-05-03

Apply updates per vendor instructions.

Resumen

Falha de injeção de template server-side (SSTI) na macro Widget Connector do Atlassian Confluence Server e Data Center, que permite path traversal e execução remota de código sem autenticação. É crítica de fato, não só no papel: não exige credenciais, conta com exploit público e módulo Metasploit, e está no catálogo KEV da CISA com exploração confirmada em campo.

Detalle técnico

A macro Widget Connector existe para embutir conteúdo externo (vídeos do YouTube, Vimeo, slideshows etc.) diretamente em páginas do Confluence. Para renderizar a pré-visualização desse conteúdo, o Confluence processa um template Velocity, e o nome/caminho desse template é controlado por um parâmetro interno da macro (_template) que não é validado corretamente — isso é a raiz do CWE-22 (path traversal) citado pela CISA.

O endpoint exposto é /rest/tinymce/1/macro/preview, que aceita um corpo JSON descrevendo a macro (name=widget) e seus parâmetros. Manipulando o parâmetro do template dentro desse JSON, um atacante consegue fazer o motor Velocity do servidor carregar e renderizar um template Velocity (.vm) hospedado fora da instância — por exemplo, via uma URL FTP controlada pelo atacante.

O problema real não é só path traversal para leitura de arquivo: o próprio conteúdo do template .vm remoto é interpretado pelo engine Velocity, que permite reflection Java arbitrária (chamadas como getClass().forName(...) para instanciar Runtime, FileOutputStream etc.). Isso transforma uma injeção de caminho em execução de código Java arbitrário no contexto do processo do Confluence — SSTI clássico que escala para RCE completo.

A vulnerabilidade foi descoberta por Daniil Dmitriev e está relacionada, no mesmo lote de correções da Atlassian, ao CVE-2019-3395 (SSRF via endpoint WebDAV), tratado em ticket JIRA separado.

Cómo se explota

Exploração não exige autenticação nem configuração não padrão: basta acesso de rede ao endpoint /rest/tinymce/1/macro/preview de uma instância Confluence vulnerável. O atacante envia um POST com JSON especificando a macro widget e um parâmetro de template apontando para um recurso externo sob seu controle (no PoC público, um servidor FTP montado pelo próprio módulo de exploração, servindo arquivos .vm maliciosos).

O servidor Confluence busca esse template remoto e o executa como Velocity, rodando o payload Java embutido (por padrão cross-platform, mas o módulo Metasploit também oferece payloads nativos para Windows e Linux). O resultado é execução de comando arbitrário com os privilégios do processo Confluence — tipicamente suficiente para comprometimento total do host, dependendo de como o serviço roda.

Há exploit público (Exploit-DB, módulo Metasploit classificado como 'Excellent' em confiabilidade) desde abril de 2019, poucas semanas após a divulgação, e a CISA confirma exploração ativa em campo (entrada no KEV desde novembro de 2021). Não há registro, nas fontes consultadas, de uso confirmado em campanhas de ransomware, mas a combinação de RCE não autenticado + PoC maduro a torna atrativa para varredura massiva e comprometimento oportunista.

Versiones

Afectadas
Confluence Server e Data Center: todas as versões antes de 6.6.12; de 6.7.0 até antes de 6.12.3; de 6.13.0 até antes de 6.13.3; de 6.14.0 até antes de 6.14.2.
Corregidas en
6.6.12 (branch 6.6.x), 6.10.3 (branch 6.10.x), 6.12.3 (branch 6.12.x), 6.13.3 (branch 6.13.x), 6.14.2 (branch 6.14.x), e 6.15.1 (release consolidado recomendado pela Atlassian).

Cómo protegerse

A correção é atualizar para a versão fixa do branch correspondente: 6.6.12 para a linha 6.6.x, 6.10.3 para 6.10.x, 6.12.3 para 6.12.x, 6.13.3 para 6.13.x, 6.14.2 para 6.14.x, ou for para a versão 6.15.1 (que já incorpora a correção e foi o release recomendado pela Atlassian no advisory original). Instâncias em qualquer versão anterior a esses pontos de correção, dentro das respectivas linhas, estão vulneráveis.

As fontes consultadas não documentam um workaround de configuração oficial (flag, desabilitar macro específica via configuração) para mitigar sem atualizar — a orientação da CISA no KEV é genérica: 'aplicar atualizações conforme instruções do fornecedor'. Não assuma que WAF genérico ou bloqueio superficial de path traversal resolve: a exploração passa por um endpoint de API legítimo (macro/preview) com payload em JSON, o que dificulta assinaturas simples sem gerar falsos positivos ou negativos.

Dado o tempo desde a divulgação (2019) e a presença no KEV desde 2021, qualquer instância ainda na faixa vulnerável hoje deve ser tratada como alvo de varredura ativa; a atualização de versão é o único controle com eficácia comprovada nas fontes disponíveis.

Cómo detectar

Procure por requisições POST ao endpoint /rest/tinymce/1/macro/preview em logs de acesso do Confluence, especialmente com corpo JSON referenciando a macro 'widget' e parâmetros de template contendo URLs externas (ftp://, http://, file://) ou padrões de path traversal (../). Conexões de saída inesperadas do host do Confluence para portas FTP ou HTTP não usuais também são sinal, já que o vetor documentado publicamente usa um servidor externo controlado pelo atacante para hospedar o template malicioso.

Não há, nas fontes consultadas, um indicador de comprometimento único e confiável pós-exploração (o payload final é arbitrário); a detecção depende de monitorar o padrão de requisição no endpoint específico e o tráfego de rede de saída anômalo do servidor Confluence.

Investigado y redactado con IA a partir del advisory del fabricante y análisis públicos, con las fuentes citadas. Verifica siempre la versión corregida en el advisory oficial antes de actuar.
The Widget Connector macro in Atlassian Confluence Server before version 6.6.12 (the fixed version for 6.6.x), from version 6.7.0 before 6.12.3 (the fixed version for 6.12.x), from version 6.13.0 before 6.13.3 (the fixed version for 6.13.x), and from version 6.14.0 before 6.14.2 (the fixed version for 6.14.x), allows remote attackers to achieve path traversal and remote code execution on a Confluence Server or Data Center instance via server-side template injection.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
PoCs públicas encontradas38 VexDay Proof
exploitdbVexDay Proofwww.exploit-db.com/exploits/46731exploitdbwww.exploit-db.com/exploits/49465no verificadogithubgithub.com/Yt1g3r/CVE-2019-3396_EXP174githubgithub.com/jas502n/CVE-2019-3396145githubgithub.com/pyn3rd/CVE-2019-339639githubgithub.com/x-f1v3/CVE-2019-339622githubgithub.com/0xNinjaCyclone/cve-2019-33963githubgithub.com/Avento/CVE-2019-3396-Memshell-for-Behinder2githubgithub.com/PetrusViet/cve-2019-33962githubgithub.com/am6539/CVE-2019-33960githubgithub.com/HK4zCzi/CVE-2019-3396-Velocity-Server-Side-Template-Injection0githubgithub.com/vntest11/confluence_CVE-2019-33960githubgithub.com/tranphuc2005/CVE-2019-33960githubgithub.com/tanw923/test10githubgithub.com/skommando/CVE-2019-3396-confluence-poc0githubgithub.com/JonathanZhou348/CVE-2019-3396TEST0githubgithub.com/dothanthitiendiettiende/CVE-2019-33960githubgithub.com/xiaoshuier/CVE-2019-33960githubgithub.com/quanpt103/CVE-2019-33960githubgithub.com/W2Ning/CVE-2019-33960githubgithub.com/yuehanked/cve-2019-33960githubgithub.com/46o60/CVE-2019-3396_Confluence0githubgithub.com/kh4sh3i/CVE-2019-33960githubgithub.com/tno01/cve-2019-33960githubgithub.com/s1xg0d/CVE-2019-33960vulncheckvulncheck.com/xdb/7f86f9ea50f4no verificadovulncheckvulncheck.com/xdb/c0e4abf9eb81no verificadovulncheckvulncheck.com/xdb/c8e79cc8ed08no verificadovulncheckvulncheck.com/xdb/fb62fcd4b481no verificadovulncheckvulncheck.com/xdb/7f52c8890f19no verificadovulncheckvulncheck.com/xdb/fb022ff5fe3ano verificadovulncheckvulncheck.com/xdb/f0c5b22fe8f3no verificadovulncheckvulncheck.com/xdb/328bcc29bf72no verificadovulncheckvulncheck.com/xdb/c8a8c265c9e9no verificadocve_referencepacketstormsecurity.com/files/152568/Atlassian-Confluence-Widget-Connector-Macro-Velocity-Template-Injection.htmlno verificadocve_referencepacketstormsecurity.com/files/161065/Atlassian-Confluence-6.12.1-Template-Injection.htmlno verificadocve_referencewww.exploit-db.com/exploits/46731/no verificadovulncheckvulncheck.com/xdb/cf39bffa0254no verificado
⚠ Recursos públicos, para evaluar la exposición de sistemas que controlas o estás autorizado a probar. Prueba solo con autorización.