CVE-2016-6366
Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.
Apply updates per vendor instructions.
Resumo
Buffer overflow no código de processamento de pacotes SNMP do Cisco ASA (e das plataformas PIX/FWSM que compartilham a mesma base de código) permite execução remota de código e bypass de autenticação administrativa. É a vulnerabilidade por trás do exploit EXTRABACON, vazado pelo grupo Shadow Brokers em agosto de 2016 e atribuído ao arsenal do Equation Group/NSA. O CVSS de 8.8 é alto, mas a exploração depende de SNMP estar habilitado e de o atacante conhecer a community string de leitura — não é uma falha explorável por um atacante anônimo na internet sem esse pré-requisito.
Detalhamento técnico
A falha (CWE-119, escrita/leitura fora dos limites de um buffer) está no binário 'lina', que implementa o processamento de pacotes SNMP no ASA. Um pacote SNMP IPv4 malformado, enviado por um cliente com a community string correta, causa overflow de um buffer na pilha durante o parsing. Como o ASA não implementa ASLR nem stack canaries, o atacante consegue sobrescrever o endereço de retorno (RET) de forma determinística e previsível por versão/build — cada versão do 'lina' tem offsets fixos e conhecidos.
O shellcode do EXTRABACON documentado publicamente opera em três estágios: um 'finder' que localiza um ponteiro na pilha, um 'preamble' que salva/restaura os registradores destruídos pelo overflow (para que o processo não caia após a exploração) e um 'payload' que efetivamente faz o trabalho. O payload não abre um shell tradicional — ele faz patch em memória de duas funções internas de autenticação (identificadas pelos pesquisadores como 'pmcheck()' e 'admauth()') para sempre retornarem verdadeiro, permitindo login administrativo sem senha correta.
O CVE cobre especificamente o SNMP como vetor de overflow; o bypass de autenticação é a consequência do payload usado pelo exploit, não uma segunda falha independente. A descrição do fornecedor fala em 'usuários remotos autenticados', mas essa 'autenticação' é apenas o conhecimento da community string SNMP (frequentemente 'public' ou outro valor trivial), que na prática funciona como controle de acesso fraco, não como autenticação de usuário.
Como é explorada
Pré-requisitos reais: SNMP habilitado na interface que recebe os pacotes (a exposição típica é a interface de gerência interna, mas os pesquisadores confirmaram cenários em que o ataque também funciona partindo da rede externa, dependendo da topologia); conhecimento da community string SNMP de leitura; e alcance de rede até a porta SNMP do equipamento. Não é necessário acesso prévio ao console ou à CLI do ASA.
O exploit público (EXTRABACON, distribuído no leak do Shadow Brokers e depois portado/melhorado por pesquisadores independentes, com módulo incorporado ao Metasploit) exige offsets específicos por versão de firmware — cada build do 'lina' tem endereços diferentes, então o exploit precisa ser calibrado para a versão exata do alvo. Isso eleva um pouco a complexidade prática em relação a um buffer overflow genérico, mas o trabalho de mapeamento de offsets já foi feito publicamente para dezenas de versões 8.x e 9.x.
O resultado final documentado é bypass de autenticação administrativa (o payload 'pass-disable'/'pass-enable' desabilita a checagem de senha), abrindo caminho para acesso via SSH/Telnet/console com privilégio admin sem credenciais válidas — e, por extensão, execução arbitrária de código no dispositivo. A CVE está no catálogo KEV da CISA, confirmando exploração real, embora o registro do KEV não detalhe campanhas específicas.
Versões
Como se proteger
A mitigação definitiva é atualizar para as versões de ASA Software corrigidas listadas no advisory oficial da Cisco (cisco-sa-20160817-asa-snmp), que publicou correções por branch de release nos dias seguintes à divulgação em agosto de 2016. As fontes consultadas não trazem a lista completa e exata de números de versão corrigidos por branch — consulte o advisory diretamente antes de declarar qualquer sistema como corrigido, para não fixar em memória um número que pode estar incompleto ou desatualizado.
Como controle compensatório quando a atualização não é imediata: desabilitar SNMP na interface exposta, ou restringir o acesso SNMP por ACL apenas a hosts de gerência confiáveis, elimina o vetor. Trocar a community string padrão/pública por uma string forte reduz a superfície, mas não elimina a falha de overflow em si — apenas dificulta o pré-requisito de acesso. Assinaturas específicas foram publicadas: Snort Rule ID 3:39885 e Cisco IPS Signature 7655-0, que podem ser usadas como camada de detecção/bloqueio via IPS enquanto a atualização não ocorre.
O que não funciona: assumir que dispositivos legados PIX estão automaticamente cobertos pelo mesmo patch do ASA — a Cisco esclareceu que o PIX não é afetado pelo EXTRABACON/CVE-2016-6366 (o PIX foi afetado por uma vulnerabilidade distinta, ligada ao exploit BENIGNCERTAIN, e apenas em versões 6.x e anteriores). Confundir os dois leva a aplicar a mitigação errada no equipamento errado.
Como detectar
A Cisco e a Talos publicaram assinaturas dedicadas: Snort Rule ID 3:39885 e Cisco IPS Signature 7655-0, que detectam o padrão de pacote SNMP malformado usado pelo EXTRABACON. Em nível de log, sinais indiretos incluem reinicializações inesperadas (reload) do ASA correlacionadas com tráfego SNMP anômalo na interface de gerência, e logins administrativos bem-sucedidos sem credenciais válidas registradas (indício de que o bypass de autenticação foi usado). Não há um IOC de rede único e confiável fora da assinatura específica, porque o exploit varia por offsets de versão — monitorar volume/tamanho anormal de pacotes SNMP destinados à interface de gerência é o sinal mais prático na ausência de IPS com a assinatura publicada.