A Zyxel corrigiu uma vulnerabilidade nos switches da série GS1900 que estava a ser explorada antes de existir correção, ou seja, como dia zero. A falha, CVE-2026-107441, permite que um atacante sem credenciais execute comandos do sistema operativo no equipamento. O caso tem uma particularidade: os ataques que comprometeram cerca de mil switches em agosto tinham sido atribuídos a outra falha, já corrigida em junho. A empresa Binarly demonstrou depois que o exploit usado pelos atacantes continuava a funcionar mesmo nos equipamentos atualizados.
Resposta rápida: Dez modelos de switches Zyxel GS1900 com firmware 2.90 Patch 2 (versões terminadas em .2)C0) ou anterior estão vulneráveis à CVE-2026-107441, explorada antes de haver correção. A atualização de junho, que corrigia a CVE-2026-7273, não protege contra este exploit. Instale o firmware 2.90 Patch 3 (.3)C0), restrinja o acesso à interface web de gestão e verifique se há sinais de comprometimento, trocando as credenciais de administração.
Um patch que não fechou a porta
Em junho, a Zyxel publicou um aviso sobre a CVE-2026-7273, que descreveu como um stack-based buffer overflow (transbordo de memória na pilha) no programa CGI do firmware dos GS1900. A falha podia permitir a um atacante na rede local, sem autenticação, executar comandos do sistema operativo, e foi corrigida com a versão 2.90 Patch 2.
Em setembro, a GreyNoise informou que um ator malicioso de língua chinesa tinha explorado a CVE-2026-7273 e roubado dados sensíveis de 996 equipamentos em 48 países. Segundo a empresa, os ataques ocorreram por volta de 17 de agosto e os atacantes levaram a configuração dos equipamentos, informação de rede e credenciais de root em formato hash. Os switches afetados estavam sobretudo em Itália, nos EUA, em Taiwan, na Coreia do Sul e em vários países da UE. A CISA, a agência de cibersegurança norte-americana, acrescentou a CVE-2026-7273 ao catálogo de vulnerabilidades exploradas (KEV) a 21 de setembro de 2026.
A história mudou quando a Binarly analisou o exploit. No aviso técnico BRLY-2026-057, a empresa afirma que o exploit em Python ofuscado com PyArmor descrito pela GreyNoise é o mesmo que analisou. A 28 de setembro, os investigadores confirmaram que as dez versões de firmware apresentadas como correção continuavam vulneráveis. A Zyxel reconheceu a nova falha e atribuiu-lhe o identificador CVE-2026-107441.
Para a Binarly, a correção de junho foi irrelevante para estes ataques. A empresa resume que, como o atacante explorava uma vulnerabilidade diferente e o patch da CVE-2026-7273 era ineficaz, a atualização não protegeu os equipamentos.
O que corre mal no dispatcher.cgi
Segundo a Binarly, trata-se de uma escrita fora dos limites de memória no programa CGI dispatcher.cgi dos switches GS1900, que pode permitir a um atacante remoto sem autenticação executar comandos arbitrários com privilégios de root. Este componente trata os pedidos feitos à interface web de gestão.
As duas falhas vêm do mesmo código de análise de parâmetros HTTP. A Zyxel explicou à Binarly que a CVE-2026-7273 dizia respeito à falta de verificação do número de parâmetros do pedido, e que a falta de verificação do tamanho desses parâmetros é uma falha distinta. A análise técnica refere que a correção de junho acrescentou uma verificação da contagem, mas a cópia insegura continuava a ser executada antes. Na prática, o atacante corrompe o contador de parâmetros antes de este ser validado, escreve sobre a memória e consegue executar comandos.
A Binarly também discorda da descrição técnica do fabricante. Segundo os investigadores, a falha está na memória global e não na pilha, e é explorável por HTTP a partir de qualquer rede com acesso ao switch. Por isso, atribui uma pontuação diferente. A Zyxel classifica a falha com 8,8 (Alta) e a Binarly com 9,8 (Crítica), ambas em CVSS v3.1. O registo da Zyxel considera um vetor de ataque de rede adjacente, enquanto a Binarly fala em exploração remota.
Modelos e versões afetados
O aviso oficial da Zyxel, de 3 de novembro, lista dez modelos. Segundo o fabricante, os produtos à venda que não constam da lista não são afetados.
| Modelo | Versões vulneráveis | Versão corrigida |
|---|---|---|
| GS1900-8 | 2.90(AAHH.2)C0 e anteriores | 2.90(AAHH.3)C0 |
| GS1900-8HP | 2.90(AAHI.2)C0 e anteriores | 2.90(AAHI.3)C0 |
| GS1900-10HP | 2.90(AAZI.2)C0 e anteriores | 2.90(AAZI.3)C0 |
| GS1900-16 | 2.90(AAHJ.2)C0 e anteriores | 2.90(AAHJ.3)C0 |
| GS1900-24 | 2.90(AAHL.2)C0 e anteriores | 2.90(AAHL.3)C0 |
| GS1900-24E | 2.90(AAHK.2)C0 e anteriores | 2.90(AAHK.3)C0 |
| GS1900-24EP | 2.90(ABTO.2)C0 e anteriores | 2.90(ABTO.3)C0 |
| GS1900-24HPv2 | 2.90(ABTP.2)C0 e anteriores | 2.90(ABTP.3)C0 |
| GS1900-48 | 2.90(AAHN.2)C0 e anteriores | 2.90(AAHN.3)C0 |
| GS1900-48HPv2 | 2.90(ABTQ.2)C0 e anteriores | 2.90(ABTQ.3)C0 |
Cronologia
| Data (2026) | Acontecimento |
|---|---|
| 16 de junho | A Zyxel publica o aviso da CVE-2026-7273 e lança o firmware 2.90 Patch 2 |
| Cerca de 17 de agosto | Segundo a GreyNoise, começa o roubo de dados de 996 switches GS1900 |
| 21 de setembro | A GreyNoise divulga a exploração e a CISA acrescenta a CVE-2026-7273 ao catálogo KEV |
| 28 de setembro | A Binarly confirma que as dez versões corrigidas continuam exploráveis |
| 29 de setembro | A equipa de segurança de produto (PSIRT) da Zyxel é notificada |
| 11 de outubro | A Zyxel confirma a nova falha e reserva a CVE-2026-107441 |
| 22 de outubro | É lançado o firmware 2.90 Patch 3 com a correção |
| 3 de novembro | A Zyxel publica o aviso de segurança e a Binarly divulga a investigação |
| 4 de novembro | O Centro Canadiano de Cibersegurança atualiza o seu alerta e refere exploração ativa |
A cronologia segue o aviso da Binarly, que dá 22 de outubro como a data em que a Zyxel lançou a correção. Algumas notícias indicam 23 de outubro. Entretanto, o Centro Canadiano de Cibersegurança atualizou o seu alerta para referir que fontes abertas indicam que a CVE-2026-107441 está a ser explorada.
Indicadores e o que continua por esclarecer
Não foram publicados endereços IP nem hashes associados a esta campanha nas fontes primárias consultadas. Sobre o material do atacante, a imprensa especializada refere que a Binarly obteve um pacote chamado gs1900_bundle.tar.gz com um script exp.py ofuscado com PyArmor, executado em Python 3.10. A mesma análise indica que o código de análise vulnerável também existe em httprestorecfg.cgi e httpupload.cgi. Os administradores devem estar atentos a pedidos HTTP anormais dirigidos a estes CGI.
Há uma dúvida importante. Como a GreyNoise contabilizou as vítimas sob a CVE-2026-7273, não se sabe quantos dos 996 switches foram comprometidos através da nova falha. Segundo a análise da Ostorlab, a CVE-2026-107441 não constava do catálogo KEV da CISA a 4 de novembro, ao contrário da CVE-2026-7273.
O que fazer agora
- Confirme a versão de firmware de cada GS1900. Qualquer versão terminada em
.2)C0ou anterior está vulnerável, mesmo que tenha recebido a atualização de junho. - Instale o firmware 2.90 Patch 3 correspondente ao modelo, indicado na tabela acima.
- Limite o acesso à interface web de gestão a uma VLAN de administração ou a endereços autorizados, e nunca a deixe exposta à internet.
- Se o equipamento esteve exposto, reveja as alterações de configuração e troque todas as credenciais privilegiadas. As credenciais roubadas podem ser usadas mesmo depois de instalar a correção.
- Trate a informação de rede guardada no switch como possivelmente exposta e reforce a monitorização dos segmentos ligados ao equipamento.
A Help Net Security recomenda também que os administradores atualizem todos os switches afetados e procurem sinais de comprometimento.
Porque é que isto importa em Portugal
Os GS1900 são switches geridos de gama de entrada, comuns em PME, escritórios, escolas e redes de pequenos operadores. São equipamentos que muitas vezes ficam anos sem revisão. O caso também mostra que ter o patch instalado não garante proteção: uma organização que cumpriu à risca o aviso de junho continuava exposta. Quando um fabricante ou investigador revê uma correção, é preciso voltar a verificar os equipamentos.
Para as entidades abrangidas pelo Regime Jurídico da Cibersegurança (Decreto-Lei n.º 125/2025, que transpõe a NIS2), a gestão de vulnerabilidades em equipamentos de rede faz parte das medidas de gestão de risco exigidas. Um comprometimento com impacto significativo pode ter de ser notificado ao CNCS, cuja equipa CERT.PT apoia a resposta a incidentes. O roubo de configurações e credenciais pode ainda abrir caminho a acessos a sistemas com dados pessoais. Nesse caso, aplicam-se as obrigações do RGPD, incluindo a notificação à CNPD no prazo de 72 horas quando houver risco para os titulares dos dados.
Perguntas frequentes
Se instalei a atualização de junho, o meu switch GS1900 está protegido?
Não. A versão 2.90 Patch 2 corrigia a CVE-2026-7273, mas continua vulnerável à CVE-2026-107441. Só as versões 2.90 Patch 3, terminadas em .3)C0, corrigem a nova falha.
Quantos equipamentos foram comprometidos?
A GreyNoise contabilizou 996 switches em 48 países, incluindo vários na União Europeia. Não se sabe quantos foram atacados através da nova falha e quantos através da anterior.
Que dados foram roubados pelos atacantes?
Segundo a GreyNoise, os atacantes levaram a configuração dos switches, informação de rede e credenciais de root em formato hash. Por isso, além de atualizar o firmware, é recomendável trocar as credenciais.
Qual é a gravidade da CVE-2026-107441?
A Zyxel atribui-lhe 8,8 (Alta) em CVSS v3.1, considerando um atacante na rede local. A Binarly classifica-a com 9,8 (Crítica), por entender que pode ser explorada a partir de qualquer rede com acesso à interface de gestão.
Esta informação tem caráter noticioso e baseia-se em dados divulgados publicamente pela Zyxel, pela Binarly (análise técnica), pelo Centro Canadiano de Cibersegurança e pela Help Net Security.

