CVE-2017-6737
Prioriza la corrección. Ella está bajo explotación confirmada por CISA.
Apply updates per vendor instructions.
Resumen
Falha de buffer overflow (CWE-119) no subsistema SNMP do Cisco IOS e IOS XE Software que permite a um atacante autenticado — que já conheça a community string SNMP (v1/v2c) ou credenciais de usuário SNMPv3 — executar código arbitrário ou forçar o reload do dispositivo. Faz parte de um lote de nove CVEs (CVE-2017-6736 a CVE-2017-6744) publicadas no mesmo advisory da Cisco, todas com o mesmo mecanismo e CVSS; a CVE-2017-6737 não tem detalhe técnico distinto documentado publicamente dentro desse conjunto. Está no catálogo KEV da CISA desde 2022, o que confirma exploração real, embora o CVSS de 8.8 dependa de um pré-requisito de autenticação que reduz bastante a superfície prática de exposição.
Detalle técnico
A causa raiz é um overflow de buffer no processamento de determinadas MIBs pelo agente SNMP do IOS/IOS XE. O advisory da Cisco não detalha a rotina de parsing exata nem separa qual MIB corresponde a qual CVE individual dentro do lote de nove vulnerabilidades — trata todas como uma família de falhas no mesmo subsistema, classificadas sob CWE-119 (restrição inadequada de operações dentro dos limites de um buffer de memória).
As MIBs identificadas como habilitando a condição vulnerável são: ADSL-LINE-MIB, ALPS-MIB, CISCO-ADSL-DMT-LINE-MIB, CISCO-AUTH-FRAMEWORK-MIB, CISCO-BSTUN-MIB, CISCO-MAC-AUTH-BYPASS-MIB, CISCO-SLB-EXT-MIB, CISCO-VOICE-DNIS-MIB, CISCO-VOICE-NUMBER-EXPANSION-MIB e TN3270E-RT-MIB. Todas ficam habilitadas por padrão sempre que o SNMP está ativo no dispositivo — não é preciso configuração adicional para que a MIB exista e seja processada, embora nem todas apareçam na saída do comando show snmp mib, o que dificulta a auditoria manual.
O atacante controla o conteúdo do pacote SNMP enviado — um GET, GETBULK ou SET malformado dirigido a um OID dentro de uma dessas MIBs — e a falha ocorre no processamento desse pacote pelo agente. Como a falha afeta as três versões do protocolo (SNMPv1, v2c e v3), o vetor de ataque é o mesmo independentemente do esquema de autenticação usado; a diferença está apenas em qual credencial o atacante precisa obter antes.
Cómo se explota
O vetor é um pacote SNMP crafted enviado via IPv4 ou IPv6 diretamente ao endereço IP do dispositivo gerenciado — não há componente de exploração indireta ou man-in-the-middle envolvido. O pré-requisito que a manchete de RCE crítica esconde é justamente o que o CVSS marca como PR:L: o atacante precisa conhecer a community string SNMP somente-leitura (para SNMPv1/v2c) ou possuir credenciais de usuário válidas (para SNMPv3) do dispositivo alvo antes de disparar o pacote malicioso. Isso elimina o cenário de exploração completamente não autenticada, mas community strings padrão ou fracas (public, private) e reuso de credenciais são comuns em infraestrutura de rede legada, o que na prática mantém a barreira baixa em muitos ambientes.
Um exploit bem-sucedido pode resultar em execução de código arbitrário com controle total do dispositivo, ou, no cenário menos severo, apenas em reload forçado (negação de serviço). A Cisco classificou a maturidade do exploit como funcional (E:F no vetor CVSS temporal do advisory), e a entrada no catálogo KEV da CISA confirma exploração observada no mundo real, embora sem menção a campanhas de ransomware associadas.
O risco concentra-se em dispositivos com SNMP exposto à rede de gerência ou, piores casos, à internet, com strings de comunidade previsíveis ou vazadas. Ambientes que restringem SNMP a uma VLAN de gerência isolada e usam ACLs reduzem drasticamente a superfície de ataque mesmo sem aplicar o patch imediatamente.
Versiones
Cómo protegerse
A correção definitiva é atualizar para uma versão do Cisco IOS ou IOS XE Software que trate as vulnerabilidades do advisory cisco-sa-20170629-snmp. O próprio advisory não lista números de versão fixos no corpo do texto — orienta o uso da ferramenta oficial Cisco IOS Software Checker para identificar a versão corrigida específica de cada trem de release (train), já que o parque de versões do IOS é extenso e as correções foram distribuídas por múltiplos branches ao longo do tempo. Não trate como confiável qualquer número de versão específico que não venha diretamente dessa ferramenta ou de um Cisco Bug ID (CSCsy56638, CSCve54313, CSCve57697, CSCve60276, CSCve60376, CSCve60402, CSCve66540, CSCve66601, CSCve66658, CSCve78027, CSCve89865) consultado individualmente.
Se a atualização não for viável no curto prazo, o workaround publicado pela Cisco consiste em desabilitar explicitamente as MIBs vulneráveis via SNMP view / access-list de OID, excluindo toda a lista de MIBs citada no advisory (ADSL-LINE-MIB, ALPS-MIB, CISCO-ADSL-DMT-LINE-MIB, CISCO-AUTH-FRAMEWORK-MIB, CISCO-BSTUN-MIB, CISCO-MAC-AUTH-BYPASS-MIB, CISCO-SLB-EXT-MIB, CISCO-VOICE-DNIS-MIB, CISCO-VOICE-NUMBER-EXPANSION-MIB, TN3270E-RT-MIB). O custo real é operacional: se alguma ferramenta de monitoramento depende dessas MIBs para coletar métricas, ela perde visibilidade após a exclusão — é preciso mapear dependências antes de aplicar.
Desativar SNMP nas versões 1 e 2c e migrar para SNMPv3 com autenticação forte não elimina a falha (ela afeta as três versões), mas reduz o risco de comprometimento de credencial por sniffing de community string em texto claro. Trocar apenas a community string sem aplicar o patch ou o workaround de exclusão de MIB não mitiga a vulnerabilidade — é um mito comum: a falha está no parsing do pacote, não na força da credencial usada para autenticar.
Cómo detectar
Não há assinatura pública de exploração conhecida específica para esta CVE. Em ambientes com visibilidade de tráfego SNMP, procure por pacotes GET/GETBULK/SET com tamanho ou estrutura anômala dirigidos a OIDs das MIBs citadas (ADSL-LINE-MIB, ALPS-MIB, CISCO-AUTH-FRAMEWORK-MIB, CISCO-BSTUN-MIB, CISCO-MAC-AUTH-BYPASS-MIB, CISCO-SLB-EXT-MIB, CISCO-VOICE-DNIS-MIB, CISCO-VOICE-NUMBER-EXPANSION-MIB, TN3270E-RT-MIB, CISCO-ADSL-DMT-LINE-MIB, TN3270E-RT-MIB), especialmente vindos de origens fora da rede de gerência esperada. Reloads inesperados de dispositivos Cisco IOS/IOS XE sem causa identificada em logs de crash, correlacionados com tráfego SNMP recebido, são o sinal mais direto disponível; na ausência de logging detalhado de SNMP no dispositivo, a detecção retroativa é limitada.