CVE-2020-29583
Corrige ahora. Ella está bajo explotación confirmada por CISA y tiene exploit funcional público.
Apply updates per vendor instructions.
Resumen
O firmware ZLD 4.60 patch 0 de dispositivos Zyxel (firewalls USG, USG FLEX, ATP, séries VPN, ZyWALL e controladores de AP NXC2500/NXC5500) trazia uma conta administrativa oculta chamada zyfwp, com senha fixa embutida em texto plano no binário do firmware. Qualquer pessoa que extraia ou já conheça essa senha consegue autenticar via SSH ou na interface web com privilégios de admin, sem depender de nenhuma falha de lógica adicional. É crítica porque o vetor é trivial (login direto) e a base instalada é grande — o pesquisador que a descobriu estimou mais de 100 mil dispositivos com a interface web exposta na internet, já que a VPN SSL compartilha a porta 443 com a administração.
Detalle técnico
A falha é uma credencial hard-coded (CWE-522/CWE-798). O usuário zyfwp foi criado pela Zyxel para permitir que o próprio firewall/appliance atualizasse automaticamente o firmware de access points conectados via FTP — um mecanismo interno de gerenciamento, não pensado para uso por operador humano. O problema é que a senha desse usuário é estática, idêntica em todos os dispositivos com aquele firmware, e fica armazenada em texto plano dentro da imagem do firmware, recuperável por quem faz engenharia reversa do binário (o pesquisador Niels Teusink, da empresa holandesa EYE, extraiu a credencial dessa forma).
Como a conta tem privilégios de admin plenos e responde tanto no daemon SSH quanto na interface de gerenciamento web, ela não é limitada a uma função restrita de FTP — o atacante que a usa tem o mesmo controle que um administrador legítimo: visualizar e alterar regras de firewall, criar contas de VPN, interceptar tráfego e reconfigurar o dispositivo.
A senha não pode ser alterada pelo administrador do dispositivo através das interfaces normais (daí 'unchangeable' na descrição oficial) — ela é fixa no firmware, o que torna a única correção real a substituição do próprio firmware, não uma reconfiguração.
Cómo se explota
O pré-requisito prático é acesso de rede à porta de administração (SSH ou HTTPS/443) do dispositivo — não há necessidade de autenticação prévia com outra conta, nem de configuração não padrão além de ter a interface de gestão exposta. Como a VPN SSL do produto roda na mesma porta 443 da interface web, muitos ambientes que expuseram a VPN para uso remoto de funcionários acabaram expondo também o vetor de ataque, mesmo sem essa intenção.
A exploração em si é um login direto: o atacante usa o nome de usuário zyfwp e a senha estática (divulgada publicamente após a pesquisa) na tela de login SSH ou web. Não há elevação de privilégio necessária — a conta já nasce com direitos administrativos. A CISA confirma exploração ativa (está no catálogo KEV desde novembro de 2021) e, à época da divulgação, a GreyNoise já havia detectado múltiplos IPs fazendo scanning massivo em busca de SSH exposto e tentando login automatizado com essa credencial de backdoor.
O resultado de um login bem-sucedido é controle administrativo total do appliance: alteração de regras de firewall, criação de túneis VPN para pivotar na rede interna, interceptação de tráfego e possível persistência a longo prazo, já que a presença da conta zyfwp não aparece como anomalia óbvia em auditorias que não conhecem a existência do backdoor.
Versiones
Cómo protegerse
A correção definitiva é atualizar o firmware para a versão ZLD V4.60 Patch1 (também distribuída como firmware WK48), que a Zyxel lançou às pressas em dezembro de 2020 após remover as builds 4.60 vulneráveis do site e da nuvem de distribuição. O fornecedor listou downloads específicos por modelo (USG20-VPN, USG40, USG60, USG110/210/310, USG1100/1900/2200, ZyWALL110/310/1100, linha ATP 100 a 800, linha VPN 50/100/300/1000 e USG FLEX 100/100W/200/500/700); para os controladores de AP NXC2500/NXC5500, listados pela CISA como afetados, não há confirmação nas fontes consultadas de qual build específica corrige a falha — verificar diretamente no advisory da Zyxel para esse modelo antes de considerar remediado.
Se a atualização imediata não for viável, o paliativo real é restringir totalmente o acesso à interface de administração (SSH e porta 443 de gestão/SSL VPN) a origens confiáveis via ACL ou rede de gerência isolada, e monitorar logs de autenticação por tentativas de login com o usuário zyfwp — mas isso reduz exposição, não elimina a falha, porque a credencial continua válida e embutida no firmware até a atualização. Trocar a senha de outras contas administrativas não mitiga nada, já que o problema é especificamente essa conta oculta e sua senha fixa, que não é alterável pelas telas normais de administração.
Não existe mitigação por configuração que desative a conta zyfwp nas versões vulneráveis — o mito de 'desativar a conta pelo painel' não se aplica, pois ela não aparece como conta gerenciável convencional. A única forma correta de remediar é o flash do firmware corrigido.
Cómo detectar
Em logs de SSH e da interface web/VPN SSL, procurar tentativas de autenticação (bem-sucedidas ou falhas) com o nome de usuário zyfwp — a sua simples presença em logs de login é indicativo de tentativa de exploração, já que não é uma conta usada por administradores legítimos no dia a dia. A GreyNoise documentou scanning massivo e automatizado em massa contra SSH exposto tentando essa credencial, então IPs de origem repetidos fazendo múltiplas tentativas de login em curto intervalo também são sinal de campanha automatizada, não de ataque direcionado.
Não há um indicador de comprometimento pós-exploração exclusivo dessa CVE além do próprio evento de login — uma vez autenticado como zyfwp, o atacante opera com as mesmas trilhas de auditoria de qualquer sessão administrativa legítima, o que dificulta diferenciar atividade maliciosa de uso normal só pelos logs subsequentes.