Cisco NX-OS Software CLI Command Injection Vulnerability
Prioritize patching. It under exploitation confirmed by CISA, has a public proof of concept and 1 threat group(s) use it.
Groups known to exploit this vulnerability (MITRE ATT&CK attribution).
Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.
Summary
CVE-2024-20399 é uma falha de command injection (CWE-78) na CLI do Cisco NX-OS que permite a um usuário já autenticado com credenciais de Administrator executar comandos arbitrários como root no Linux subjacente do switch, sem passar pelo shell interativo suportado pelo dispositivo. O CVSS 6.0 reflete corretamente que o requisito de privilégio já é alto (PR:H) — isso não é uma falha de escalonamento remoto, é uma técnica de evasão e persistência para quem já tem as chaves do equipamento. Importa porque foi explorada como zero-day por um grupo de espionagem ligado à China (Velvet Ant, segundo a Sygnia) contra switches Nexus em ambientes de data center antes da divulgação pública.
Technical detail
A causa raiz é validação insuficiente de argumentos passados a comandos específicos de configuração da CLI do NX-OS. O NX-OS roda sobre um kernel Linux, mas normalmente abstrai esse ambiente por trás de sua própria sintaxe de comandos — para 'escapar' e chegar ao shell Linux, um usuário legítimo precisaria habilitar explicitamente o recurso bash-shell (quando disponível) ou usar o comando 'run bash'. A vulnerabilidade permite que, ao incluir input malformado como argumento de certos comandos de configuração, esse argumento seja interpretado e executado pelo sistema operacional subjacente com privilégios de root, contornando esse mecanismo de shell explícito.
How it’s exploited
O pré-requisito prático domina o risco real desta CVE: o atacante precisa já possuir credenciais válidas de Administrator (network-admin/vdc-admin) e acesso à console de gerência do switch — não há componente remoto não autenticado. Em dispositivos onde o recurso bash-shell já está disponível por padrão (Nexus 3000, Nexus 9000 em modo standalone, e Nexus 7000 em releases 8.1(1) e posteriores), a falha não concede privilégio adicional algum: um admin já pode chegar ao root via 'run bash'. O valor real da falha para um atacante é evasão de detecção — ela permite executar comandos no SO subjacente sem disparar a mensagem de syslog que normalmente registra o uso do comando 'run bash', dificultando a atribuição forense. Ainda assim, como os comandos afetados são de configuração, a etapa inicial de exploração gera uma mensagem de syslog de mudança de configuração, o que fornece um sinal residual. A exploração documentada foi conduzida pelo grupo Velvet Ant (rastreado como ligado à China pela Sygnia), que usou a falha como zero-day para executar malware customizado em switches Nexus comprometidos, mantendo acesso remoto persistente, upload de arquivos e execução de código — tudo isso após já ter obtido credenciais administrativas na rede interna da vítima.
Versions
How to protect
A mitigação primária é atualizar para releases fixas do NX-OS; não existe workaround publicado pela Cisco — o advisory é explícito: 'There are no workarounds that address this vulnerability'. Releases 9.3(5) e posteriores já não são afetadas, com exceções pontuais: nas plataformas Nexus 3000 listadas (N3K-C3048TP-1GE, N3K-C3132Q-40GX, N3K-C3172PQ-10GE, N3K-C3172TQ-10GT, N3K-C3172TQ-32T, N3K-C3524P-10GX, N3K-C3548P-10GX) a correção só chega em 9.3(14); e no Nexus 9000 modelo N9K-C92348GC-X a correção está em 9.3(14), 10.3(6) e 10.4(3). Para MDS 9000 e Nexus 5500/5600/6000 as fontes consultadas não trazem o número exato de release corrigido por linha de produto — consulte o CSAF/advisory específico do bug ID correspondente (CSCwj97007 para MDS 9000; CSCwj97011 para 5500/5600/6000) antes de assumir cobertura.
Como não há patch de configuração, o controle compensatório real é reduzir quem tem credenciais de Administrator e onde elas podem ser usadas: acesso à console de gerência via jump host/PAM com MFA, isolamento em rede fora-de-banda, e rotação frequente de credenciais network-admin e vdc-admin — recomendação que consta tanto no advisory da Cisco quanto na análise da Sygnia. Não existe mitigação via ACL ou WAF, porque a superfície é a própria CLI administrativa do dispositivo, não uma interface de rede exposta.
How to detect
O sinal mais confiável é indireto: como os comandos explorados são comandos de configuração, a etapa inicial de exploração gera uma mensagem de syslog reportando uma mudança de configuração no dispositivo — mesmo que a execução subsequente no shell Linux não gere o log habitual de uso do comando 'run bash'. Isso torna a ausência de log de bash-shell combinada com mudanças de configuração inesperadas ou não reconhecidas pelos operadores um indicador a investigar. Como switches e appliances de rede raramente têm seus logs centralizados (ponto destacado pela Sygnia na investigação do Velvet Ant), a lacuna prática de detecção é grande: sem encaminhamento de syslog para um SIEM e sem auditoria de uso de credenciais network-admin/vdc-admin, a exploração pode passar despercebida por longos períodos.