CVE-2015-2051
Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.
The impacted product is end-of-life and should be disconnected if still in use.
Resumo
Injeção de comandos OS não autenticada na interface HNAP do roteador D-Link DIR-645 (firmware 1.04b12 e anteriores), explorável via o header SOAPAction de uma ação GetDeviceSettings. Está no catálogo KEV da CISA desde 2022 com exploração confirmada e módulo Metasploit público; a ação recomendada pela própria CISA não é patch, é desconectar o equipamento, porque o produto está em fim de vida.
Detalhamento técnico
A falha é CWE-77 (command injection). A interface HNAP1 (Home Network Administration Protocol, endpoint /HNAP1/) processa o header HTTP SOAPAction, que define a ação a executar — no caso, GetDeviceSettings. O firmware concatena parte desse valor diretamente em uma chamada de shell (via system() ou equivalente) sem sanitizar metacaracteres, então um atacante pode anexar `;comando;`, backticks ou similares depois do nome da ação para inserir comandos arbitrários que o dispositivo executa com privilégios do processo do servidor web (root, tipicamente, em firmware de roteador embarcado).
É injeção de comando 'blind': a resposta HTTP não devolve a saída do comando executado, então exploração confiável depende de técnicas de staging — o módulo Metasploit usa CmdStager com a flavour 'echo', escrevendo um payload maior em disco (ex.: em /tmp) comando por comando via múltiplas requisições, e depois executando o binário resultante.
O mesmo advisory do fornecedor (SAP10051) menciona também uma segunda falha, um buffer overflow na mesma interface HNAP explorável via SOAPAction, mas essa é uma falha de memória distinta (ROP em MIPS little-endian) — não é o mecanismo do CVE-2015-2051, que é especificamente a injeção de comando.
O CVSS oficial usa AV:A (adjacent network), não AV:N. Isso importa: apesar de a descrição do fornecedor falar em 'remote attackers', a pontuação assume que o atacante já está na mesma rede lógica do roteador (LAN/Wi-Fi) ou em segmento adjacente — cenário típico quando a interface de administração HNAP não está exposta diretamente à Internet, o que é o padrão de fábrica na maioria das instalações domésticas.
Como é explorada
Pré-requisito real: acesso de rede à porta HTTP de administração do dispositivo (porta 80, endpoint /HNAP1/). Não exige autenticação, não exige interação do usuário e não exige configuração não padrão — a interface HNAP responde por padrão. O fator limitante na prática é exposição: se o painel de administração não estiver acessível pela WAN (configuração padrão da maioria dos ISPs/usuários), o atacante precisa estar na mesma rede local ou ter comprometido algo nela antes, o que reduz drasticamente a superfície real de ataque para 'remoto pela Internet' apesar da manchete.
O vetor prático: enviar uma requisição HTTP (GET ou POST) para /HNAP1/ com o header SOAPAction contendo a string da ação GetDeviceSettings seguida de um separador de shell e o comando desejado. Como é injeção blind, ferramentas de exploração (o módulo Metasploit público é o exemplo documentado) usam a técnica de 'cmdstager' para escrever e montar um payload maior em múltiplas requisições, já que não há canal de retorno direto da saída do comando.
O resultado final é execução arbitrária de comandos com privilégios elevados no roteador (RCE completo), permitindo persistência, pivotagem para a rede interna, interceptação de tráfego ou recrutamento do dispositivo em botnets — uso documentado historicamente em campanhas de botnet IoT contra DIR-645 e modelos relacionados. A presença no catálogo KEV da CISA confirma exploração ativa observada, embora a CISA não detalhe campanhas específicas nessa entrada.
Versões
Como se proteger
O fornecedor publicou o firmware 1.05b01 para o DIR-645 Rev. A1, que corrige a falha (SAP10051, atualizado em 24/04/2015). Aplicar esse firmware é a mitigação direta para quem ainda opera o hardware exato.
No entanto, o D-Link DIR-645 atingiu End of Support/End of Life em 31/12/2018 (SAP10282). Não há mais desenvolvimento de firmware, e a própria CISA, ao incluir a CVE no KEV, recomenda como ação corretiva desconectar o dispositivo da rede caso ainda esteja em uso — não recomenda apenas atualizar, porque o produto não recebe mais patches para vulnerabilidades futuras. Substituir o equipamento é a mitigação estrutural.
Como controle compensatório temporário, se a substituição não for imediata: restringir o acesso à interface HTTP de administração exclusivamente a hosts de gestão confiáveis (segmentação de rede/VLAN), desabilitar administração remota/WAN se estiver ativa, e bloquear a porta de administração no perímetro. Isso não corrige a falha, apenas reduz a superfície — qualquer host na mesma LAN ainda consegue explorar sem autenticação. Não existe mitigação por 'senha forte' ou troca de credenciais, porque a falha não depende de autenticação nenhuma.
Como detectar
Em logs de servidor web do dispositivo (quando disponíveis) ou em captura de tráfego de rede, procurar requisições HTTP para /HNAP1/ cujo header SOAPAction contenha a string 'GetDeviceSettings/' seguida de caracteres de metacomando como ';', backticks, '|' ou '&&', ou padrões de comando como 'telnetd', 'wget', 'echo' repetidos em múltiplas requisições sequenciais — assinatura típica de uso de CmdStager (técnica de escrita de payload em blocos via comandos 'echo' sucessivos, como implementado no módulo Metasploit público). Múltiplas requisições GET/POST rápidas e repetidas ao mesmo endpoint HNAP1 vindas do mesmo IP, sem sessão autenticada, é um sinal forte de tentativa de exploração ou de varredura automatizada de botnet.
Dispositivos DIR-645 EOL raramente possuem logging robusto ou exportação de logs para SIEM, então a ausência de sinal não indica ausência de exploração — é uma limitação real do produto, não um indicativo de segurança.