← voltar
CVE-2020-3118highsob ataqueCWE-134

Cisco IOS XR Software Cisco Discovery Protocol Format String Vulnerability

76Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA e tem prova de conceito pública.

ssvc Actcvss 8.8epss 12%
da publicação à arma
Publicada no NVD5 de fev.
CISA KEV+637d
probabilidade de exploração
12%top 4% das CVEs
exploração observada
simCISA + VulnCheck
1 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-05-03

Apply updates per vendor instructions.

Resumo

Falha de format string (CWE-134) na implementação do Cisco Discovery Protocol (CDP) no Cisco IOS XR Software, que permite a um atacante adjacente na camada 2 (mesmo domínio de broadcast), sem autenticação, causar um estouro de pilha e executar código arbitrário com privilégios administrativos, ou no mínimo forçar reload do dispositivo. O CVSS 8.8 reflete o impacto total (C:H/I:H/A:H) mas o vetor AV:A já embute a limitação central: exige adjacência de camada 2, e o CDP não vem habilitado por padrão no IOS XR. Está no catálogo KEV da CISA desde novembro de 2021 e existe PoC pública, o que eleva a prioridade em ambientes onde CDP está de fato ativo.

Detalhamento técnico

O CDP é um protocolo proprietário de descoberta de camada 2 usado para troca de informações entre equipamentos Cisco vizinhos (nome de dispositivo, plataforma, capacidades, endereço IP, versão de software, etc.). No parser de mensagens CDP do IOS XR, campos de string vindos do pacote recebido são processados de forma que a validação de entrada é insuficiente — a descrição oficial fala em 'improper validation of string input from certain fields', e o CWE atribuído (134, Uncontrolled Format String) indica que dados controlados pelo atacante acabam sendo interpretados como especificadores de formato ou copiados sem checagem de tamanho, corrompendo a pilha.

Como é explorada

O vetor é um pacote CDP malicioso enviado por um atacante que esteja no mesmo segmento de camada 2 do dispositivo alvo — não há autenticação envolvida (PR:N) e não é necessária interação do usuário (UI:N), mas o requisito de adjacência L2 é o filtro real: o atacante precisa estar conectado à mesma LAN/VLAN ou a um link direto onde CDP trafegue, o que normalmente significa acesso físico à rede interna, um switch comprometido, ou uma porta de acesso mal segmentada. O advisório da Cisco reforça que CDP não é habilitado por padrão no IOS XR — é preciso estar habilitado globalmente E em pelo menos uma interface para o dispositivo ser explorável, condição que reduz bastante a superfície real de exposição em campo.

Existe PoC pública documentada (referência PacketStorm 'CDP Remote Device Takeover') e a CVE está no catálogo KEV da CISA, confirmando exploração observada in-the-wild, embora a CISA marque como 'Unknown' o uso em campanhas de ransomware. Um exploit bem-sucedido dá ao atacante execução de código com privilégios administrativos no plano de controle do roteador — controle total do equipamento de rede, incluindo capacidade de interceptar, redirecionar ou derrubar tráfego que passa por ele.

Versões

Afetadas
Versões do Cisco IOS XR Software (32-bit e 64-bit) rodando em ASR 9000 Series, Carrier Routing System (CRS), IOS XRv 9000, Network Convergence System (NCS) 540, 560, 1000, 5000, 5500 e 6000 Series, além de roteadores white-box de terceiros executando IOS XR — em todos os casos, apenas quando CDP está habilitado globalmente E em ao menos uma interface. NCS 520 Series foi confirmado como não vulnerável.
Corrigidas em
A Cisco publicou atualizações de software corrigidas por trem de release na seção 'Fixed Software' do advisório; a listagem detalhada de números de versão por plataforma não estava disponível no conteúdo consultado — confirmar a versão fixa aplicável via Cisco Software Checker ou suporte Cisco (TAC) antes de considerar o ambiente corrigido.

Como se proteger

A correção definitiva é atualizar para uma versão fixa do Cisco IOS XR Software; a Cisco não disponibilizou a tabela completa de versões corrigidas por trem de release no texto consultado — é necessário validar a versão exata via Cisco Software Checker ou TAC para a plataforma específica (ASR 9000, CRS, IOS XRv 9000, NCS 540/560/1000/5000/5500/6000). O advisório formalmente declara 'no workarounds available', mas na prática oferece um controle compensatório eficaz: desabilitar CDP globalmente ('no cdp' em modo de configuração global) ou por interface, o que fecha totalmente o vetor de ataque para quem não depende do protocolo. O custo é perder a funcionalidade de descoberta automática de vizinhos Cisco, usada por ferramentas de gerência e diagnóstico de topologia — em redes que dependem disso, desabilitar CDP globalmente pode exigir ajuste operacional; desabilitar apenas nas interfaces voltadas a segmentos não confiáveis (acesso de usuário final, por exemplo) reduz a superfície sem eliminar CDP nos uplinks entre equipamentos Cisco confiáveis. Segmentação de rede e controle de acesso físico à camada 2 não eliminam o risco caso um atacante já tenha pé na LAN, mas reduzem a chance de um atacante externo alcançar o domínio de broadcast necessário.

Como detectar

Para saber se CDP está habilitado (pré-condição de exposição), o comando 'show running-config | include cdp' no IOS XR revela se o protocolo está ativo globalmente e em interfaces — presença das linhas 'cdp' na configuração indica exposição potencial. Não há assinatura de detecção de exploração documentada nas fontes consultadas; na ausência de IDS específico para CDP malformado, os sinais indiretos a observar são reloads inesperados do processo/dispositivo, entradas de crash no syslog do IOS XR coincidindo com tráfego CDP anômalo no segmento L2, e captura de pacotes CDP com campos de string de tamanho ou formato fora do padrão nos segmentos onde o protocolo está habilitado.

Pesquisado e redigido com IA a partir do advisory do fornecedor e de análises públicas, com as fontes acima. Confira sempre a versão corrigida no advisory oficial antes de agir.
A vulnerability in the Cisco Discovery Protocol implementation for Cisco IOS XR Software could allow an unauthenticated, adjacent attacker to execute arbitrary code or cause a reload on an affected device. The vulnerability is due to improper validation of string input from certain fields in Cisco Discovery Protocol messages. An attacker could exploit this vulnerability by sending a malicious Cisco Discovery Protocol packet to an affected device. A successful exploit could allow the attacker to cause a stack overflow, which could allow the attacker to execute arbitrary code with administrative privileges on an affected device. Cisco Discovery Protocol is a Layer 2 protocol. To exploit this vulnerability, an attacker must be in the same broadcast domain as the affected device (Layer 2 adjacent).
CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.