← voltar
CVE-2023-43770mediumsob ataqueCWE-79

CVE-2023-43770

77Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA e tem prova de conceito pública.

ssvc Actcvss 6.1epss 58%
da publicação à arma5 dias
Publicada no NVD22 de set.
1ª PoC+5d
CISA KEV+143d
probabilidade de exploração
58%top 1% das CVEs
exploração observada
simCISA + VulnCheck
5 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2024-03-04

Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

Resumo

Falha de XSS persistente no Roundcube Webmail, no módulo que converte e-mails em texto puro para HTML e reconhece padrões de 'link reference' (ex.: `[1] http://exemplo.com`). Um atacante pode enviar um e-mail malicioso com um link reference forjado; quando a vítima abre a mensagem no webmail, código HTML/JavaScript é injetado sem sanitização na página. Importa porque não exige nenhuma ação privilegiada do atacante — só enviar um e-mail — e está confirmada em exploração ativa (catálogo KEV da CISA).

Detalhamento técnico

A vulnerabilidade está em program/lib/Roundcube/rcube_string_replacer.php, na lógica que identifica 'linkrefs' em mensagens de texto puro — o padrão usado por e-mails que citam links como `[1]` e depois listam a URL correspondente em outra linha (`[1] http://...`). As expressões regulares `linkref_index` e `linkref_pattern` usavam a classe de caracteres `[^\]#]+` para capturar o conteúdo dentro dos colchetes, o que permitia qualquer caractere exceto `]` e `#` — incluindo ``. Isso significa que o valor entre colchetes podia conter tags HTML completas, como `evil`.

Como é explorada

O vetor é uma mensagem de e-mail em texto puro (text/plain) contendo um padrão de linkref onde o rótulo entre colchetes traz HTML/JavaScript, seguido de uma URL na linha correspondente (ex.: um bloco `[...] https://...`). O atacante não precisa de credenciais no Roundcube nem de acesso à rede da vítima — só precisa que o e-mail chegue à caixa de entrada e seja aberto. O CVSS reflete exatamente isso: PR:N (atacante não precisa de privilégio nenhum, é remetente externo), UI:R (a vítima precisa abrir/visualizar a mensagem no webmail) e S:C (o script roda no contexto da sessão do webmail, fora do 'objeto' vulnerável original).

Como é persistente/armazenado, o payload fica na caixa de correio até ser visualizado, e a execução ocorre no contexto de origem do Roundcube — permitindo roubo de sessão, leitura de outras mensagens ou ações via API interna do webmail em nome da vítima. A CISA lista a falha no catálogo KEV com confirmação de exploração ativa (adicionada em 12/02/2024, prazo de correção 04/03/2024), embora não haja indicação de uso em campanhas de ransomware.

Versões

Afetadas
Roundcube antes de 1.4.14; ramo 1.5.x antes de 1.5.4; ramo 1.6.x antes de 1.6.3.
Corrigidas em
1.4.14, 1.5.4 e 1.6.3 (ramos correspondentes). Backport disponível para Debian 10 (buster) LTS na versão do pacote 1.3.17+dfsg.1-1~deb10u3.

Como se proteger

A correção definitiva é atualizar para Roundcube 1.4.14, 1.5.4 ou 1.6.3, conforme o ramo em uso — o fix restringe a classe de caracteres do regex de linkref para excluir `` (commit e92ec20). Para Debian 10 (buster) em LTS, o backport foi publicado como pacote roundcube 1.3.17+dfsg.1-1~deb10u3 (DLA-3577-1).

Não há flag de configuração ou parâmetro que mitigue a falha sem aplicar o patch — a sanitização do regex faz parte do parser interno de mensagens, então não existe workaround client-side confiável. Regras de WAF genéricas contra tags `` em corpo de e-mail podem reduzir a superfície, mas não cobrem todas as variações de tags/atributos que o regex antigo permitia, portanto não substituem a atualização.

Como detectar

Não há assinatura de rede confiável, pois o disparo ocorre no navegador da vítima ao renderizar a mensagem no webmail, não em uma requisição HTTP distinta e identificável. O sinal mais concreto é inspecionar o corpo de mensagens text/plain armazenadas em busca de padrões de linkref com caracteres `` dentro dos colchetes (ex.: `[...]` seguido de uma URL na linha logo abaixo) — esse formato é o indicativo direto de tentativa de exploração e pode ser varrido retroativamente em caixas de correio já recebidas antes do patch.

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.
Roundcube before 1.4.14, 1.5.x before 1.5.4, and 1.6.x before 1.6.3 allows XSS via text/plain e-mail messages with crafted links because of program/lib/Roundcube/rcube_string_replacer.php behavior.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Produtos afetados
n/a · n/a
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.