← voltar
CVE-2022-30525criticalsob ataqueCWE-78

CVE-2022-30525

100Vexday Risk Score

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

ssvc Actcvss 9.8epss 100%
da publicação à arma0 dias
Publicada no NVD12 de mai.
1ª PoC10 de mai.
metasploit28 de abr.
CISA KEV+4d
probabilidade de exploração
100%top 1% das CVEs
exploração observada
simCISA + VulnCheck
25 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-06-06

Apply updates per vendor instructions.

Resumo

Falha de injeção de comandos do sistema operacional (OS command injection) no programa CGI de provisionamento de múltiplas linhas de firewall Zyxel (USG FLEX, ATP, VPN series, USG20-VPN), explorável sem autenticação através da rede. CVSS 9.8 e EPSS próximo de 1.0 refletem a realidade: está no catálogo KEV da CISA por exploração ativa confirmada, tem módulo Metasploit, template Nuclei e PoC pública — é uma das CVEs de firewall mais escaneadas e usadas por botnets desde 2022.

Detalhamento técnico

A falha é classificada como CWE-78 (OS Command Injection). Está no programa CGI usado no fluxo de provisionamento/gerenciamento do dispositivo, que recebe dados de entrada e os utiliza para modificar arquivos específicos no sistema de arquivos do firewall; esses arquivos modificados acabam sendo interpretados ou referenciados por processos que executam comandos do sistema operacional, sem sanitização adequada do conteúdo controlado pelo atacante. Isso permite que uma entrada malformada resulte em execução arbitrária de comandos no contexto do processo CGI.

O título de uma das PoCs catalogadas ("Zyxel Firewall ZTP Unauthenticated Command Injection") indica que o vetor está associado ao mecanismo de Zero Touch Provisioning (ZTP) do dispositivo, um recurso pensado para provisionamento automático que, em muitas configurações, fica acessível pela interface de gerenciamento sem exigir credenciais. Outra referência catalogada ("SUID Binary Privilege Escalation") sugere que pesquisadores encadearam essa injeção com um binário SUID presente no firmware para elevar a execução inicial a privilégios de root completos no dispositivo — mas essa parte é uma cadeia de exploração documentada por terceiros, não parte da CVE-2022-30525 em si (que cobre apenas a injeção de comando).

O vetor CVSS (AV:N/AC:L/PR:N/UI:N) confirma ausência de pré-requisito de autenticação e de interação do usuário, e complexidade de ataque baixa — condições coerentes com exploração massiva observada.

Como é explorada

A exploração ocorre remotamente via HTTP/HTTPS contra a interface CGI de gerenciamento/provisionamento do dispositivo. Não é necessária autenticação prévia, o que reduz drasticamente a barreira de exploração: qualquer firewall vulnerável com a interface administrativa exposta à internet (WAN) é alvo direto. Isso é o dado mais relevante para priorização: dispositivos com a administração restrita a LAN ou VPN, sem exposição direta à internet, não sofrem o mesmo risco imediato, embora ainda estejam vulneráveis a um atacante que já tenha pé dentro da rede.

A disponibilidade de PoC pública, módulo Metasploit e template Nuclei tornou a exploração trivial de automatizar — o padrão observado após a divulgação foi varredura em massa da internet à procura de instâncias expostas, característica de campanhas de botnet (o padrão típico de CVEs de firewall/roteador nesse período: comprometimento para inclusão em redes de bots ou para acesso inicial em intrusões maiores). A entrada no catálogo KEV da CISA, com prazo de correção de apenas três semanas após a adição (16/05/2022 a 06/06/2022), reflete a urgência atribuída pelo órgão à exploração ativa confirmada.

O resultado final da exploração é execução de comandos arbitrários no sistema operacional do firewall, o que, em um dispositivo de borda de rede, normalmente equivale a comprometimento total do perímetro: interceptação de tráfego, pivotamento para a rede interna, manipulação de regras de firewall/VPN e persistência.

Versões

Afetadas
USG FLEX 100(W): firmware 5.00 a 5.21 Patch 1. USG FLEX 200: 5.00 a 5.21 Patch 1. USG FLEX 500: 5.00 a 5.21 Patch 1. USG FLEX 700: 5.00 a 5.21 Patch 1. USG FLEX 50(W): 5.10 a 5.21 Patch 1. USG20(W)-VPN: 5.10 a 5.21 Patch 1. ATP series: 5.10 a 5.21 Patch 1. VPN series: 4.60 a 5.21 Patch 1.
Corrigidas em
Zyxel publicou firmwares corrigidos específicos por modelo no advisory oficial, acima das faixas listadas em versions_affected. A numeração exata de cada build corrigido por linha de produto (USG FLEX, ATP, VPN series, USG20-VPN) não foi confirmada em detalhe nas fontes lidas nesta pesquisa — consultar diretamente o advisory oficial da Zyxel para a versão de destino do modelo específico antes de aplicar.

Como se proteger

A correção definitiva é atualizar o firmware para uma versão posterior a 5.21 Patch 1 nas linhas USG FLEX (100/100W, 200, 500, 700), USG FLEX 50/50W, USG20(W)-VPN e ATP series, e para uma versão corrigida acima da faixa 4.60–5.21 Patch 1 na VPN series — a tabela exata de builds corrigidos por modelo consta no advisory oficial da Zyxel e deve ser conferida diretamente nele, pois a numeração de patch varia por linha de produto e não está detalhada de forma uniforme nas fontes consultadas aqui.

Como paliativo quando a atualização imediata não é viável: remover qualquer exposição da interface de administração/CGI de provisionamento à internet, restringindo o acesso a redes de gerência confiáveis ou VPN. Isso neutraliza o vetor de rede não autenticado, que é a característica que torna essa CVE crítica na prática — sem exposição WAN, a superfície de ataque cai para quem já tem acesso à rede interna. Desabilitar ou restringir o recurso de Zero Touch Provisioning, quando não utilizado, também reduz a superfície disponível ao CGI vulnerável.

O que não funciona como mitigação real: apenas trocar a senha padrão de administração não impede a exploração, já que o vetor não exige autenticação. Regras de firewall genéricas de borda também não protegem se a própria interface de gerenciamento do firewall está exposta — o controle precisa ser aplicado especificamente sobre o acesso à interface administrativa/CGI do próprio dispositivo.

Como detectar

Sinal mais direto: requisições HTTP/HTTPS para os endpoints CGI de provisionamento/ZTP do dispositivo com payloads incomuns em campos que normalmente conteriam dados de configuração simples (nomes de arquivo, parâmetros de rede) — a presença de metacaracteres de shell nesses campos em logs de acesso web é indicativo de tentativa de exploração. A existência de template Nuclei público significa que esse mesmo padrão de requisição é usado tanto por atacantes quanto por scanners defensivos, então volume alto de requisições repetidas ao mesmo endpoint a partir de múltiplos IPs é característico de varredura em massa (padrão de botnet) mais do que de ataque direcionado.

Não há um IOC de rede único e estável divulgado (como um valor de payload fixo), já que a exploração pode variar conforme o exploit usado; portanto, sinal de log do próprio dispositivo (execução de processos filhos inesperados a partir do processo do servidor web/CGI, ou modificação de arquivos de configuração fora do fluxo normal de administração) é mais confiável do que assinatura de tráfego isolada.

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.
A OS command injection vulnerability in the CGI program of Zyxel USG FLEX 100(W) firmware versions 5.00 through 5.21 Patch 1, USG FLEX 200 firmware versions 5.00 through 5.21 Patch 1, USG FLEX 500 firmware versions 5.00 through 5.21 Patch 1, USG FLEX 700 firmware versions 5.00 through 5.21 Patch 1, USG FLEX 50(W) firmware versions 5.10 through 5.21 Patch 1, USG20(W)-VPN firmware versions 5.10 through 5.21 Patch 1, ATP series firmware versions 5.10 through 5.21 Patch 1, VPN series firmware versions 4.60 through 5.21 Patch 1, which could allow an attacker to modify specific files and then execute some OS commands on a vulnerable device.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
PoCs públicas encontradas25
exploitdbwww.exploit-db.com/exploits/50946não verificadogithubgithub.com/shuai06/CVE-2022-3052533githubgithub.com/jbaines-r7/victorian_machinery30githubgithub.com/Henry4E36/CVE-2022-3052522githubgithub.com/west9b/CVE-2022-3052512githubgithub.com/savior-only/CVE-2022-305254githubgithub.com/Chocapikk/CVE-2022-30525-Reverse-Shell4githubgithub.com/iveresk/cve-2022-305253githubgithub.com/k0sf/CVE-2022-305253githubgithub.com/cbk914/CVE-2022-30525_check2githubgithub.com/furkanzengin/CVE-2022-305251githubgithub.com/arajsingh-infosec/CVE-2022-30525_Exploit1githubgithub.com/M4fiaB0y/CVE-2022-305251githubgithub.com/superzerosec/CVE-2022-305251githubgithub.com/ProngedFork/CVE-2022-305251githubgithub.com/160Team/CVE-2022-305250vulncheckvulncheck.com/xdb/f52f29d8e852não verificadocve_referencepacketstormsecurity.com/files/167182/Zyxel-Firewall-ZTP-Unauthenticated-Command-Injection.htmlnão verificadocve_referencepacketstormsecurity.com/files/167372/Zyxel-USG-FLEX-5.21-Command-Injection.htmlnão verificadocve_referencepacketstormsecurity.com/files/168202/Zyxel-Firewall-SUID-Binary-Privilege-Escalation.htmlnão verificadovulncheckvulncheck.com/xdb/6355edd8b2d3não verificadovulncheckvulncheck.com/xdb/e15afba00994não verificadovulncheckvulncheck.com/xdb/bb42ffd583c7não verificadovulncheckvulncheck.com/xdb/fae80e0c7f01não verificadocve_referencepacketstormsecurity.com/files/167176/Zyxel-Remote-Command-Execution.htmlnão verificado
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.