← volver
CVE-2020-12812criticalbajo ataqueransomwareCWE-287

CVE-2020-12812

70Vexday Risk Score

Prioriza la corrección. Ella está bajo explotación confirmada por CISA y 1 grupo(s) de amenaza la utilizan.

ssvc Actcvss 9.8epss 49%
de la publicación al arma
Publicada en NVD24 jul
CISA KEV+467d
probabilidad de explotación
49%top 1% de las CVE
explotación observada
CISA + VulnCheck
1 grupo(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 autenticação no SSL VPN do FortiOS que permite contornar o segundo fator (FortiToken) simplesmente alterando a caixa (maiúsculas/minúsculas) do nome de usuário no login. Afeta apenas contas configuradas com autenticação remota (LDAP, RADIUS etc.) e 2FA habilitado no perfil 'user local' — não é um bypass genérico de autenticação, mas um bypass específico do segundo fator para um subconjunto de configurações. Está no catálogo KEV da CISA, com exploração confirmada em campo, apesar de o próprio fornecedor ter classificado a falha original como severidade Média (CVSSv3 5.2), bem abaixo do 9.8 atribuído no NVD/KEV.

Detalle técnico

A causa é CWE-178 (tratamento inconsistente de case sensitivity) combinado com CWE-287 (autenticação imprópria). Quando um usuário é definido em 'user local' com tipo de autenticação remoto (ex: LDAP) e dois fatores habilitados (FortiToken), o FortiOS precisa casar o nome de usuário digitado no prompt SSL VPN com o registro local que carrega a exigência de 2FA. Antes da correção, essa comparação de string não era consistentemente case-sensitive entre o mecanismo de autenticação local e o remoto.

O efeito prático: se o atacante alterar a caixa do username (por exemplo, usar variações de maiúsculas/minúsculas em relação ao cadastro original), o sistema remoto (LDAP) ainda autentica a senha normalmente — case geralmente é ignorado em diretórios LDAP — mas o FortiOS deixa de associar essa variação de string ao registro local que dispara o prompt de FortiToken. O usuário passa pela primeira etapa (senha) e nunca é desafiado pela segunda (token), efetivamente autenticando com apenas um fator.

A correção introduziu um atributo CLI novo, 'username-case-sensitivity', dentro da configuração de 'user local', disponível quando autenticação remota e 2FA estão ambos habilitados. Com o atributo em 'enable' (valor padrão pós-patch), o comparativo de username volta a ser sensível a caixa, alinhando o comportamento entre autenticação local e remota e fechando a lacuna que permitia a inconsistência.

Cómo se explota

O pré-requisito real é ter credenciais válidas (usuário e senha) de uma conta que usa autenticação remota (LDAP/RADIUS) com 2FA via FortiToken habilitado em 'user local' no FortiGate. Não é um bypass de senha — é um bypass do segundo fator para quem já teria conseguido logar normalmente (ou obteve a senha por outro meio: phishing, reuse de credencial, brute-force, vazamento). O atacante simplesmente altera a caixa do nome de usuário no portal SSL VPN durante a tentativa de login.

A complexidade de exploração é baixa (AC:L no CVSS) e não exige interação do usuário nem acesso privilegiado prévio além das credenciais primárias — daí o vetor de rede irrestrito (AV:N) e o score alto atribuído pelo NVD. O resultado final, se explorado com sucesso, é acesso à VPN SSL corporativa sem que o segundo fator seja exigido, dando ao atacante o mesmo nível de acesso que o usuário legítimo teria dentro do túnel — o que costuma significar acesso à rede interna.

A presença no catálogo KEV da CISA (adicionada em novembro de 2021) confirma exploração ativa em campo, tipicamente como parte de campanhas mais amplas contra dispositivos FortiGate expostos, embora a CISA não tenha classificado esta CVE como associada a campanhas de ransomware especificamente.

Versiones

Afectadas
FortiOS 6.4.0; 6.2.0 a 6.2.3; 6.0.9 e versões anteriores (dentro do branch 6.0).
Corregidas en
FortiOS 6.4.1 ou posterior; 6.2.4 ou posterior; 6.0.10 ou posterior.

Cómo protegerse

A mitigação definitiva é atualizar o FortiOS para 6.4.1 ou posterior, 6.2.4 ou posterior, ou 6.0.10 ou posterior, dependendo do branch em uso. O patch introduz o atributo 'username-case-sensitivity' em 'user local'; após a atualização, confirme que esse atributo está em 'enable' (esse é o valor padrão pós-patch e restaura o comportamento anterior de exigir correspondência exata de caixa entre autenticação local e remota).

Não existe paliativo de configuração pré-patch: o atributo que corrige o problema só passa a existir a partir das versões corrigidas, então não há flag equivalente para aplicar em versões vulneráveis. Como controle compensatório antes de atualizar, restrinja o acesso ao portal SSL VPN por IP de origem, monitore logs de autenticação para variações de case no mesmo username e, se possível, desabilite temporariamente contas que combinem autenticação remota com 2FA até a atualização ser aplicada.

Não confundir esta CVE com outras vulnerabilidades de SSL VPN do FortiOS da mesma época (path traversal, buffer overflow) — a correção de uma não cobre a outra, e ambientes atingidos por campanhas de exploração de Fortinet costumam ter múltiplas CVEs em jogo simultaneamente.

Cómo detectar

Procure em logs de autenticação SSL VPN por múltiplos logins bem-sucedidos do mesmo usuário lógico com variações de caixa no username (ex.: 'usuario', 'Usuario', 'USUARIO') vindos de IPs distintos ou em sequência suspeita, especialmente em contas configuradas com autenticação remota e FortiToken. Ausência de prompt/registro de desafio de segundo fator em uma sessão que deveria exigi-lo é o sinal mais direto, mas depende de os logs do FortiGate capturarem o evento de MFA separadamente do evento de autenticação primária — em muitos ambientes esse nível de granularidade não está habilitado por padrão, então a detecção retroativa pode não ser confiável sem logging avançado já configurado antes do incidente.

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.
An improper authentication vulnerability in SSL VPN in FortiOS 6.4.0, 6.2.0 to 6.2.3, 6.0.9 and below may result in a user being able to log in successfully without being prompted for the second factor of authentication (FortiToken) if they changed the case of their username.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Productos afectados
n/a · Fortinet FortiOS