
Verificador Python somente leitura que valida o comportamento de bypass de autenticação da CVE-2026-20079 no Cisco FMC, comparando respostas de sessão não autenticadas e de csm_processes.
Um utilitário de validação pequeno e deliberadamente limitado para o CVE-2026-20079, a vulnerabilidade de bypass de autenticação do Cisco Secure Firewall Management Center (FMC).
Este repositório é um verificador, não um exploit.
Ele não contém as partes de upgrade de sessão, escrita de arquivos, execução de comandos ou RCE da cadeia de vulnerabilidade.
O verificador envia duas requisições HTTPS para /help/about.cgi:
CGISESSID=csm_processes.Um achado é marcado como CONFIRMED apenas quando a segunda resposta:
csm_processes.Isso fornece uma forma conservadora e somente leitura de validar o comportamento de bypass de autenticação que reproduzimos em laboratório.
Um resultado negativo não prova que o appliance está corrigido.
O bypass documentado requer que a sessão csm_processes criada na inicialização
permaneça no banco de dados de sessões do appliance. Atividade autenticada no
dashboard/widgets, atividade de UI gerenciada pela nuvem e limpeza acionada por
autenticação podem removê-la. Uma vez removida, este bypass não pode usar essa
sessão; uma inicialização subsequente pode recriá-la em um appliance afetado.
Isso não estabelece que todo login bem-sucedido desabilita imediatamente o
bypass. Veja
a análise de pré-requisitos da VulnCheck.
Estado preferencial para validação controlada em laboratório: testar um appliance reiniciado recentemente assim que sua interface web estiver disponível, antes que qualquer usuário se autentique ou interaja com a UI web. Esta recomendação decorre dos pré-requisitos de sessão publicados: aumenta a chance de que a sessão criada na inicialização ainda exista, mas não garante um resultado positivo.
Distinga o estado de teste do resultado: um appliance reiniciado recentemente oferece uma oportunidade melhor de observar este comportamento; um resultado negativo após login ou limpeza de sessão não estabelece que o appliance está corrigido. Mesmo um resultado negativo imediatamente após a reinicialização não é prova do status de correção.
Por exemplo, um usuário se autentica e a atividade na UI limpa a sessão. Se o
verificador então receber um redirecionamento ou HTTP 401/403, ele reporta
NOT_CONFIRMED: negativo para o comportamento observado, potencialmente um
falso negativo para exposição à vulnerabilidade. Autenticação não é correção.
O verificador não consegue observar o histórico de login ou o banco de dados de
sessões. Ele classifica a resposta HTTP, então a autenticação prévia por si só
não é motivo para forçar um resultado negativo. Outras respostas inesperadas
permanecem INCONCLUSIVE, e falhas de requisição permanecem ERROR.
Use o aviso da Cisco e o Software Checker para determinar a exposição a correções.
A versão pública intencionalmente não possui funcionalidade para:
Apenas endereços IP literais fornecidos pelo operador são aceitos.
IPs públicos exigem a flag explícita --allow-public.
requestsInstale:
python3 -m pip install -r requirements.txt
IP privado/de laboratório:
python3 CVE-2026-20079-checker.py --host 192.168.1.100
IP público que você está autorizado a avaliar:
python3 CVE-2026-20079-checker.py \
--host 203.0.113.10 \
--allow-public
Crie targets.txt:
# One literal IP address per line
192.168.1.100
192.168.1.101
Execute:
python3 CVE-2026-20079-checker.py \
--targets targets.txt \
--json results.json \
--csv results.csv
Para uma lista autorizada contendo IPs públicos:
python3 CVE-2026-20079-checker.py \
--targets targets.txt \
--allow-public \
--workers 4 \
--json results.json
A ferramenta intencionalmente não aceita intervalos CIDR.
Varreduras de host único mostram um bloco detalhado. Exemplo de saída usando o
appliance de laboratório documentado (FMC 7.4.2 Build 172) e o alvo de exemplo 192.168.1.100:
[*] CVE-2026-20079 Read-Only Validation
[*] Target : 192.168.1.100
[*] Endpoint : /help/about.cgi
[*] Mode : Read-only / no exploitation
[+] Appliance : Cisco Secure Firewall Management Center for KVM
[+] Version : 7.4.2
[+] Build : 172
[+] Server : Mojolicious (Perl)
[*] Baseline HTTP : 302
[*] Session HTTP : 200
[*] Session Context : csm_processes
[*] Comparison : baseline=302 -> probe=200
[CONFIRMED] CVE-2026-20079 authentication-bypass behavior observed
[*] Reason : Server returned FMC content with HTTP 200 while explicitly identifying the csm_processes session context.
[*] Summary:
confirmed=1
not_confirmed=0
inconclusive=0
errors=0
[!] Note : NOT_CONFIRMED does not prove the appliance is patched
Varreduras usando --targets FILE mostram uma tabela compacta com as colunas
TARGET, RESULT, VERSION, BASE e PROBE, seguidas de um resumo. Detalhes
ausentes aparecem como not observed na visualização detalhada ou - na tabela.
Os rótulos de produto e contexto de sessão são informativos; eles não alteram os
critérios de detecção. JSON/CSV retêm todos os campos existentes e acrescentam
product e session_context. Nem um resultado negativo nem metadados ausentes
estabelecem o status de correção.
| Result | Meaning |
|---|---|
CONFIRMED | A resposta observada corresponde ao indicador de bypass somente leitura usado por este verificador. |
NOT_CONFIRMED | A sondagem retornou um redirecionamento ou HTTP 401/403. O bypass não foi observado; a sessão necessária pode estar ausente. Isso não é equivalente a "corrigido". |
INCONCLUSIVE | Comportamento semelhante ao FMC ou de outra forma incomum foi observado, mas o verificador não conseguiu confirmar a identidade da sessão. |
ERROR | Falha de rede/TLS/requisição impediu uma determinação. |
Códigos de saída:
0 — nenhum achado confirmado1 — todas as verificações falharam com erros de requisição2 — pelo menos um achado confirmado64 — alvo público fornecido sem --allow-publicO código de saída 0 significa nenhum achado confirmado, incluindo execuções com
resultados inconclusivos ou uma mistura de erros de requisição e resultados não
confirmados. Não é um veredito de status de correção. Da mesma forma,
vulnerable_behavior: false em uma exportação significa que os critérios de
confirmação não foram atendidos.
Durante o desenvolvimento, o comportamento somente leitura foi reproduzido contra:
Cisco Secure Firewall Management Center for KVM
7.4.2 Build 172
O propósito de documentar essa observação é a reprodutibilidade; ela não é um substituto para as informações autoritativas da Cisco sobre versões vulneráveis/corrigidas.
Veja docs/LAB-NOTES.md.
A Cisco classifica o CVE-2026-20079 como Critical (CVSS 10.0) e afirma que a exploração bem-sucedida pode resultar em acesso root. A Cisco lançou correções/hot fixes e relata exploração ativa em agosto de 2026.
Siga o aviso atual da Cisco e o Software Checker em vez de confiar apenas neste scanner.
Execute este utilitário apenas contra sistemas que você possui ou tem autorização explícita para avaliar.
Testes de segurança de rede podem acionar controles de monitoramento, limites de taxa, processos de resposta a incidentes ou sistemas de abuso de provedores de serviço, mesmo quando as requisições são somente leitura.
MIT. Veja LICENSE.