CVE-2019-16057
Patch now. It under exploitation confirmed by CISA and has a working public exploit.
The impacted product is end-of-life and should be disconnected if still in use.
Summary
O script login_mgr.cgi da interface web do D-Link DNS-320 (dispositivo de armazenamento em rede) contém uma falha de injeção de comandos que permite execução remota de código sem autenticação. É crítica porque atinge um NAS tipicamente exposto em rede local ou, em configurações mal feitas, direto na internet, e porque o produto está em fim de vida — não há correção do fornecedor a esperar.
Technical detail
A vulnerabilidade é classificada como CWE-78 (OS Command Injection). O script CGI login_mgr.cgi, parte da interface de administração web do firmware do DNS-320, processa parâmetros de requisição e os utiliza na montagem de um comando de sistema executado pelo processo do servidor web embarcado. A falta de sanitização desses parâmetros permite que um atacante injete metacaracteres de shell e faça o dispositivo executar comandos arbitrários com os privilégios do processo do CGI — em firmwares embarcados desse tipo, tipicamente root.
As fontes disponíveis não detalham qual parâmetro específico do script é o vetor de injeção nem o payload exato usado na prova de conceito original; a descrição do fornecedor e o registro no NVD confirmam apenas a natureza da falha (remote command injection) e o componente afetado (login_mgr.cgi). Não há, nas fontes analisadas, código de exploração publicado com detalhes de implementação.
How it’s exploited
O vetor é de rede (AV:N), sem necessidade de autenticação (PR:N) e sem interação do usuário (UI:N), o que caracteriza um ataque de baixa complexidade: um atacante com acesso à interface HTTP de administração do DNS-320 pode enviar uma requisição manipulada diretamente ao login_mgr.cgi e obter execução de comando no dispositivo. Isso está alinhado ao CVSS 9.8 atribuído.
A CVE está no catálogo KEV da CISA, confirmando exploração ativa observada no mundo real, e o EPSS alto (0,87) reforça que a probabilidade de tentativas de exploração é elevada — comum em botnets IoT que varrem a internet por dispositivos D-Link expostos. A existência de template Nuclide/Nuclei público indica que a detecção (e a exploração) foi automatizada por ferramentas de varredura em massa.
O pré-requisito prático mais relevante é a exposição da interface de administração do NAS à rede de onde o atacante consegue originar tráfego — seja a internet (se o dispositivo tiver port-forwarding ou UPnP configurado) ou a rede local. Não há evidência nas fontes de que a exploração exija autenticação prévia ou configuração não padrão além dessa exposição.
Versions
How to protect
O D-Link DNS-320 está listado como produto em fim de vida (end-of-life) pela própria CISA, e a ação recomendada oficialmente é desconectar o dispositivo da rede se ainda estiver em uso — não há indicação, nas fontes consultadas, de firmware corrigido disponível para esta CVE.
Como paliativo caso o desligamento não seja viável imediatamente: remover qualquer exposição da interface de administração à internet (desativar port-forwarding, UPnP e acesso remoto), restringir acesso à interface web apenas a hosts de gerência confiáveis via segmentação de rede/firewall, e considerar o dispositivo como não confiável para dados sensíveis. Esses controles reduzem a superfície de ataque mas não eliminam o risco caso o atacante já tenha acesso à rede interna.
Não existe mitigação por configuração dentro do próprio produto (não há flag ou opção documentada para desativar o script vulnerável sem comprometer a funcionalidade de login), e trocar senha padrão ou desativar contas não impede a exploração, já que a falha não depende de autenticação.
How to detect
Procurar em logs do servidor web embarcado do NAS (ou em tráfego HTTP capturado) requisições direcionadas ao endpoint login_mgr.cgi contendo caracteres típicos de injeção de shell (como ;, |, &, `, $(), aspas) nos parâmetros da requisição. A existência de um template Nuclei público para esta CVE indica que varreduras automatizadas de rede a favor ou contra o dispositivo tendem a gerar requisições padronizadas facilmente identificáveis em logs de acesso.
Não há, nas fontes analisadas, uma assinatura de payload específica documentada publicamente; portanto, a ausência de log de acesso ao dispositivo (comum em NAS domésticos sem log centralizado) significa que muitas explorações passadas provavelmente não deixaram rastro auditável.