← voltar
CVE-2021-35211criticalsob ataqueransomwareCWE-787

Serv-U Remote Memory Escape Vulnerability

100Vexday Risk Score

Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.

ssvc Actcvss 9epss 91%
da publicação à arma78 dias
Publicada no NVD14 de jul.
1ª PoC+78d
CISA KEV+112d
probabilidade de exploração
91%top 1% das CVEs
exploração observada
simCISA + VulnCheck
5 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2021-11-17

Apply updates per vendor instructions.

Resumo

Falha de memória (out-of-bounds write, CWE-787) na implementação do protocolo SSH do SolarWinds Serv-U que permite execução remota de código sem autenticação, caso o serviço SSH do Serv-U esteja exposto à internet. Foi usada como 0-day por um grupo atribuído pela Microsoft à China (DEV-0322) contra um conjunto limitado e direcionado de vítimas antes da correção, e está no catálogo KEV da CISA por exploração confirmada.

Detalhamento técnico

A falha está no parsing de pacotes SSH pelo Serv-U, especificamente na rotina CSUSSHSocket::ProcessReceive, responsável por processar payloads recebidos na negociação/tratamento de mensagens SSH. O bug é uma escrita fora dos limites de memória (CWE-787) — o atacante controla parte do conteúdo de um pacote SSH malformado que, ao ser processado, corrompe memória do processo Serv-U.exe, permitindo desviar o fluxo de execução e rodar código arbitrário com os privilégios do processo (tipicamente SYSTEM ou conta de serviço configurada).

A Microsoft identificou a causa raiz via análise black-box do binário (não teve acesso ao código-fonte), depois de observar telemetria com processos anômalos gerados a partir do Serv-U.exe. O fornecedor não publicou detalhes técnicos adicionais do bug após o patch, alegando dar tempo para clientes atualizarem.

Um detalhe relevante da superfície de exploração: a pasta \Client\Common\ do Serv-U é acessível pela internet por padrão, e o grupo observado redirecionava a saída de comandos executados via cmd.exe para arquivos dentro dessa pasta, usando-a como canal de exfiltração dos resultados do comando remoto — sem depender de shell reverso.

No Windows, a exploração leva a RCE completo. No Linux, o SolarWinds afirma que a mesma tentativa de exploração causa apenas crash do processo Serv-U (negação de serviço), não execução de código — distinção confirmada pelo próprio fornecedor, não apenas suposição da pesquisa.

Como é explorada

Pré-requisito central, frequentemente omitido em resumos da CVE: o serviço SSH do Serv-U precisa estar exposto à rede/internet. Não há necessidade de autenticação (PR:N, UI:N no vetor CVSS), mas a complexidade de ataque é alta (AC:H) — a exploração exige conhecimento preciso da falha de memória e engenharia cuidadosa do payload SSH, não é um ataque trivial de scan-and-pwn.

Na campanha documentada pela Microsoft, o grupo DEV-0322 explorou o 0-day para obter execução de código no processo Serv-U e em seguida gerou processos filhos (mshta.exe, cmd.exe, powershell.exe) para reconhecimento (whoami, dir), execução de scripts batch e movimentação lateral via cópia de arquivos por SMB. Um passo de persistência observado foi a criação manual de um arquivo .Archive malformado no diretório Global Users, efetivamente adicionando um usuário administrador ao próprio Serv-U — abuso do formato de armazenamento de credenciais do produto, não uma segunda vulnerabilidade.

A exploração bem-sucedida também tende a gerar efeitos colaterais visíveis: uma exceção registrada no log e, em alguns casos, o crash do processo Serv-U após execução de comando malicioso — sinal de que o exploit, como escrito pelos atacantes observados, não era perfeitamente estável.

Versões

Afetadas
Serv-U Managed File Transfer e Serv-U Secure FTP para Windows, versão 15.2.3 HF1 e todas as versões anteriores.
Corrigidas em
Serv-U 15.2.3 HF2. Caminho de atualização: de 15.2.3 HF1 aplicar direto HF2; de 15.2.3 (sem hotfix) aplicar HF1 e depois HF2; de qualquer versão anterior a 15.2.3, atualizar para 15.2.3, depois aplicar HF1, depois HF2.

Como se proteger

Atualizar para Serv-U 15.2.3 HF2 é a correção definitiva. Caminhos de atualização conforme o SolarWinds: quem está em 15.2.3 HF1 aplica direto o HF2; quem está em 15.2.3 sem hotfix aplica HF1 e depois HF2; quem está em qualquer versão anterior a 15.2.3 precisa primeiro atualizar para 15.2.3, depois HF1, depois HF2 — não existe atalho direto de versões antigas para o HF2.

Se a atualização imediata não for possível, o controle compensatório real é não expor a porta SSH do Serv-U à internet (restringir por firewall/VPN/allowlist de IP) — a Microsoft afirma explicitamente que o risco de RCE depende do SSH estar acessível externamente. Isso não elimina a vulnerabilidade, apenas reduz drasticamente a superfície de ataque enquanto o patch não é aplicado. Em ambientes Windows sem patch e com SSH exposto, revisar se a pasta \Client\Common\ está com permissões/exposição além do necessário também reduz a utilidade de um dos vetores de exfiltração observados na campanha real.

Não existe mitigação eficaz apenas via desativação de recursos não relacionados ao SSH (FTP/FTPS por si só não protege, já que o vetor documentado é especificamente a implementação SSH). Em Linux, o próprio fornecedor descreve o impacto como crash (DoS), não RCE — ainda assim recomenda-se aplicar o patch, pois a garantia de que não há caminho de RCE ali vem apenas da avaliação do fornecedor, sem confirmação independente publicada.

Como detectar

O Serv-U registra no arquivo de log DebugSocketLog.txt uma exceção do tipo 'EXCEPTION: C0000005; CSUSSHSocket::ProcessReceive(); Type: 30...' quando uma tentativa de exploração ocorre. A própria Microsoft alerta que essa exceção pode aparecer por motivos não relacionados a ataque, então não é um indicador definitivo isolado — deve ser correlacionado com outros sinais.

Outros indicadores comportamentais da campanha real observada: processos filhos anômalos gerados a partir de Serv-U.exe (mshta.exe, cmd.exe, powershell.exe executando reconhecimento como whoami/dir), saída de comandos redirecionada para arquivos dentro de \Client\Common\, e a criação/modificação inesperada de arquivos .Archive no diretório Global Users (indicando criação de usuário administrador não autorizado). A ausência desses sinais não garante que não houve tentativa, especialmente diante de exploits mais estáveis que os observados na campanha documentada.

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.
Microsoft discovered a remote code execution (RCE) vulnerability in the SolarWinds Serv-U product utilizing a Remote Memory Escape Vulnerability. If exploited, a threat actor may be able to gain privileged access to the machine hosting Serv-U Only. SolarWinds Serv-U Managed File Transfer and Serv-U Secure FTP for Windows before 15.2.3 HF2 are affected by this vulnerability.
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.