Este documento descreve a funcionalidade e a configuração da detecção de ameaças no Cisco Secure Firewall ASA.
A Cisco recomenda o conhecimento da CLI do ASA, controle de acesso e (para detecção de ameaças de VPN) VPN de acesso remoto.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
A detecção de ameaças no ASA oferece uma defesa de linha de frente nas camadas 3/4. Ele cria uma linha de base a partir de estatísticas de descarte de pacotes e relatórios opcionais de "topo" no nível do objeto. Ele não substitui um módulo IPS dedicado ou IPS de próxima geração, que inspeciona o tráfego permitido até a camada 7; os dois podem trabalhar juntos.
Note: Este artigo aborda o conjunto de recursos do ASA CLI. O Cisco Secure Firewall Threat Defense (FTD) expõe um recurso de Detecção de Ameaças relacionado, mas não idêntico, nas Configurações Avançadas da Política de Controle de Acesso. Não trate a Detecção de Ameaças de FTD como um mapeamento 1:1 desses comandos. Consulte o artigo ASA to Threat Defense Feature Mapping para obter mais informações.
A detecção de ameaças fornece aos administradores de firewall ferramentas para identificar, entender e (para serviços de varredura e VPN) interromper ataques. Ele conta com acionadores de taxa, estatísticas em nível de objeto e shuns automáticos opcionais.
Há quatro componentes neste recurso:
A detecção básica de ameaças é ativada por padrão em ASAs que executam a versão 8.0(2) e posterior.
Ele monitora as taxas em que os pacotes são descartados por vários motivos pelo ASA como um todo. As estatísticas se aplicam a todo o dispositivo e geralmente não são granulares o suficiente para identificar o host de origem. O ASA monitora pacotes descartados para estes eventos:
A maioria dos acionadores mapeia para motivos específicos de queda de ASP; são igualmente contabilizados determinados syslogs e ações de inspeção. Alguns disparadores aparecem em mais de uma categoria de ameaça. Mapeamentos comuns (não exaustivos):
| Ameaça básica |
Gatilho(s) / Motivo(s) de queda ASP |
| acl-drop |
acl-drop |
| bad-packet-drop |
invalid-tcp-hdr-length invalid-ip-header inspect-dns-pak-too-long inspect-dns-id-not-matched |
| conn-limit-drop |
conn-limit |
| dos-drop |
sp-security-failed |
| fw-drop |
inspect-icmp-seq-num-not-matched inspect-dns-pak-too-long inspect-dns-id-not-matched sp-security-failed acl-drop |
| icmp-drop |
inspect-icmp-seq-num-not-matched |
| inspect-drop |
Quedas de quadros disparadas por um mecanismo de inspeção |
| queda de interface |
sp-security-failed no-route |
| ameaça de varredura |
tcp-3whs-failed tcp-not-syn sp-security-failed acl-drop inspect-icmp-seq-num-not-matched inspect-dns-pak-too-long inspect-dns-id-not-matched |
| ataque SYN |
Syslog %ASA-6-302014 com motivo de encerramento de "SYN Timeout" |
Para cada evento, a detecção básica de ameaças mede as taxas de queda em um intervalo de taxa média (ARI) configurado, de 600 segundos a 30 dias. Se os eventos no ARI excederem os limites configurados, o ASA os tratará como uma ameaça.
Há dois limites: taxa média e taxa de burst. A taxa média é de quedas por segundo sobre o ARI. A taxa de intermitência usa um intervalo de taxa de intermitência (BRI) mais curto. Desde a versão 8.2(1), a BRI representa 1/30 do ARI, ou 10 segundos, o que for maior. Antes do 8.2(1), a BRI era 1/60 do ARI. O mínimo de 10 segundos se aplica a todas as versões de software.
Exemplo: A taxa média de queda de ACL 400 com ARI 600 segundos significa que o ASA calcula a média de quedas de ACL nos últimos 600 segundos e registra uma ameaça se essa média exceder 400 por segundo. A taxa de intermitência 800 com o mesmo ARI usa uma BRI de 20 segundos (600 / 30). Se a ACL cair nessa janela de 20 segundos exceder 800 por segundo, uma ameaça será registrada.
Quando uma ameaça básica é detectada, o ASA gera o syslog %ASA-4-733100. Se as taxas média e de intermitência forem excedidas, o ASA poderá enviar duas mensagens 733100 (uma por tipo de taxa), com um máximo de uma mensagem por tipo de taxa por período de intermitência.
Execute o comando show threat-detection rate para ver a média, a atual, a contagem de disparadores e o total de eventos. O ASA armazena contagens no final de cada período de intermitência para 30 BRIs concluídas. A BRI atual não terminada é normalmente excluída da média. A contagem total de eventos é a soma de eventos nessas 30 amostras BRI (com uma exceção em tempo real se a BRI inacabada já exceder a amostra mais antiga.)
A taxa de intermitência no syslog é calculada a partir de quedas até o momento na BRI atual, amostradas periodicamente, para que uma violação possa ser relatada antes que a BRI seja concluída (um syslog por tipo de taxa por BRI). A taxa de intermitência/corrente em show threat-detection rate usa a última BRI concluída.
A detecção básica de ameaças não elimina nem evita o tráfego. É informativo (monitoramento e emissão de relatórios). O impacto no desempenho é insignificante e ocorre principalmente quando há quedas ou possíveis ameaças.
A detecção avançada de ameaças rastreia estatísticas para objetos mais granulares: IPs de host, portas, protocolos, ACLs e servidores protegidos pelo TCP Intercept. Por padrão, somente as estatísticas da ACL são ativadas. As estatísticas de host têm um impacto significativo no desempenho sob alto tráfego; ative-os temporariamente quando precisar deles. As estatísticas de porta têm um impacto mais modesto.
Para objetos de host, porta e protocolo, o ASA rastreia pacotes, bytes e descartes enviados e recebidos em janelas fixas. Para ACLs, ele rastreia as 10 principais ACEs (permitir e negar) nessas janelas. As ocorrências de ACE permitidas e negadas não são diferenciadas na exibição da ACL superior.
As janelas fixas são de 20 minutos, 1 hora, 8 horas e 24 horas. As próprias janelas não são configuráveis. O número da taxa {1 | 2 A palavra-chave | 3} (somente host, porta e protocolo) controla quantos dos intervalos mais longos são mantidos:
As estatísticas de host são acumuladas enquanto o host está ativo no banco de dados de host de ameaça de varredura e são apagadas após 10 minutos de inatividade.
Quando a interceptação TCP está habilitada, a detecção de ameaças pode rastrear os 10 principais servidores sob ataque. As estatísticas de Interceptação de TCP usam uma janela de monitoramento configurável mais os limites de média e intermitência (disponíveis na versão 8.0(4) e posterior). Defaults:
Exiba as estatísticas executando o comando show threat-detection statistics e show threat-detection statistics top. Esse também é o recurso que preencheu os gráficos "principais" no painel de controle do firewall ASDM clássico.
A detecção avançada de ameaças é informativa, exceto pelo fato de que o TCP Intercept já protege o servidor. Nenhum bloco adicional é aplicado apenas a partir dessas estatísticas.
A varredura da detecção de ameaças rastreia hosts que criam conexões em muitos hosts em uma sub-rede ou em muitas portas em um host ou sub-rede. Por padrão, ela está desativada. Ao contrário da detecção de varredura baseada em assinatura IPS, a detecção de ameaça de varredura ASA mantém um banco de dados de host (conexões sem atividade de retorno, acesso de porta fechada, certos comportamentos TCP e muito mais).
Ele compartilha intervalo de taxa, taxa média (ARI) e taxa de intermitência (BRI) com a categoria básica de ameaça de varredura. Não é possível configurar taxas separadas para varredura básica versus varredura. A diferença é que a detecção de ameaças de varredura mantém um invasor e um banco de dados de IP de destino. Somente o tráfego permitido pelo ASA e que cria um fluxo é contado. A detecção básica de ameaças ainda pode disparar uma 733100 de varredura de ameaças para o tráfego negado pela ACL; a detecção de ameaças de varredura não.
Se a taxa de varredura for excedida para o tráfego de um host, esse host será um invasor. Se for excedido para o tráfego para um host, esse host é um destino. O Syslog %ASA-4-733101 está registrado. Você pode opcionalmente evitar o invasor (%ASA-4-733102 quando o shun é adicionado, %ASA-4-733103 quando ele é removido.) A duração de shun padrão é de 3600 segundos (1 hora), configurável de 10 a 2592000 segundos.
A varredura da detecção de ameaças com shun é um dos dois recursos que podem ativamente descartar o tráfego permitido (o outro é a detecção de ameaças de VPN).
Execute o comando show threat-detection scanning-threat para o banco de dados do invasor/destino e show threat-detection shun somente para shuns de ameaça de verificação.
Note: Hosts isentos que enviam alto tráfego legítimo de plano de controle ou multicast (por exemplo, roteadores PIM) com verificação de detecção de ameaça-bloqueio de ameaça exceto, ou esses pacotes podem ser descartados quando um shun é instalado.
A detecção de ameaças de VPN protege o headend de VPN de acesso remoto do ASA contra ataques do estilo DoS IPv4. Por padrão, todos os três serviços ficam desativados. Quando um serviço é habilitado e um host excede seu limite, o ASA encaminha automaticamente esse endereço IPv4 até que você remova o shun.
Serviços:
Esses ataques podem consumir recursos de autenticação e de sessão mesmo quando falham. Ao definir a retenção e o limite, leve em conta o PAT (hotéis, CGNAT): muitos usuários válidos podem compartilhar um IP público. Use valores mais altos para que os usuários legítimos possam concluir a conexão.
A detecção de ameaças de VPN monitora apenas o IPv4 pronto para uso. Os shuns aparecem em show shun, não em show threat-detection shun. Syslogs relacionados: %ASA-6-733200 (info) e %ASA-4-733201 (limite excedido; shun instalado.)
A detecção básica de ameaças é ativada por padrão. Você pode reativá-la com:
ciscoasa(config)# threat-detection basic-threat
Desabilitar sem ameaça básica de detecção de ameaça. Exibição de taxas padrão com show run all threat-detection:
ciscoasa(config)# show run all threat-detection threat-detection rate dos-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate dos-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate bad-packet-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate bad-packet-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate acl-drop rate-interval 600 average-rate 400 burst-rate 800 threat-detection rate acl-drop rate-interval 3600 average-rate 320 burst-rate 640 threat-detection rate conn-limit-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate conn-limit-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate icmp-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate icmp-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate scanning-threat rate-interval 600 average-rate 5 burst-rate 10 threat-detection rate scanning-threat rate-interval 3600 average-rate 4 burst-rate 8 threat-detection rate syn-attack rate-interval 600 average-rate 100 burst-rate 200 threat-detection rate syn-attack rate-interval 3600 average-rate 80 burst-rate 160 threat-detection rate fw-drop rate-interval 600 average-rate 400 burst-rate 1600 threat-detection rate fw-drop rate-interval 3600 average-rate 320 burst-rate 1280 threat-detection rate inspect-drop rate-interval 600 average-rate 400 burst-rate 1600 threat-detection rate inspect-drop rate-interval 3600 average-rate 320 burst-rate 1280 threat-detection rate interface-drop rate-interval 600 average-rate 2000 burst-rate 8000 threat-detection rate interface-drop rate-interval 3600 average-rate 1600 burst-rate 6400
Ajuste uma categoria executando o comando threat-detection rate. Cada categoria pode ter até três taxas (taxa 1, 2 e 3). A ID da taxa que foi excedida é referenciada na 733100:
ciscoasa(config)# threat-detection rate acl-drop rate-interval 1200 average-rate 250 burst-rate 550
Neste exemplo, o 733100 é gerado quando as quedas de ACL excedem 250/seg em 1200 segundos ou 550/seg em 40 segundos (1200 / 30.)
A palavra-chave scanning-threat neste comando é compartilhada com a detecção de ameaça de varredura. Você pode definir as taxas de varredura mesmo que a detecção básica de ameaças esteja desativada.
Execute o comando threat-detection statistics para habilitar estatísticas avançadas. Sem palavra-chave, todos os tipos de estatísticas são ativados:
ciscoasa(config)# threat-detection statistics ? configure mode commands/options: access-list Keyword to specify access-list statistics host Keyword to specify IP statistics port Keyword to specify port statistics protocol Keyword to specify protocol statistics tcp-intercept Trace tcp intercept statistics <cr>
no threat-detection statistics (sem opções) remove todos os comandos de estatística, incluindo a lista de acesso de estatísticas de detecção de ameaças.
Estatísticas da ACL (padrão ativado):
ciscoasa(config)# threat-detection statistics access-list
Host, porta ou protocolo, com número opcional de intervalos de taxa:
ciscoasa(config)# threat-detection statistics host number-of-rate 2 ciscoasa(config)# threat-detection statistics port number-of-rate 2 ciscoasa(config)# threat-detection statistics protocol number-of-rate 3
Estatísticas de Interceptação TCP (também disponíveis no modo de contexto múltiplo):
ciscoasa(config)# threat-detection statistics tcp-intercept ciscoasa(config)# threat-detection statistics tcp-intercept rate-interval 60 burst-rate 800 average-rate 600
ciscoasa(config)# threat-detection scanning-threat ciscoasa(config)# threat-detection rate scanning-threat rate-interval 1200 average-rate 10 burst-rate 20 ciscoasa(config)# threat-detection scanning-threat shun ciscoasa(config)# threat-detection scanning-threat shun duration 1000 ciscoasa(config)# threat-detection scanning-threat shun except ip-address 10.1.1.1 255.255.255.255 ciscoasa(config)# threat-detection scanning-threat shun except object-group no-shun
Você pode combinar shun e except em uma linha e inserir o comando várias vezes para isentar mais endereços ou grupos de objetos.
ciscoasa(config)# threat-detection scanning-threat shun except ip-address 10.1.1.0 255.255.255.0
ciscoasa(config)# threat-detection service invalid-vpn-access ciscoasa(config)# threat-detection service remote-access-client-initiations hold-down 10 threshold 20 ciscoasa(config)# threat-detection service remote-access-authentication hold-down 10 threshold 20
Desative um serviço com a forma no do mesmo comando. Redefina os contadores com o serviço de detecção de ameaças.
Para obter informações detalhadas, consulte Configurar detecção de ameaças para serviços VPN de acesso remoto no Secure Firewall ASA (ID do documento 222315)
A detecção básica de ameaças tem pouco impacto no desempenho. As estatísticas avançadas de host e a detecção de ameaças de varredura consomem mais recursos, pois armazenam dados por host e por objeto. Ative temporariamente as estatísticas do host enquanto soluciona um problema específico.
Recursos que podem descartar tráfego permitido de outra forma:
Monitore a memória antes e depois de ativar recursos avançados ou de varredura:
ciscoasa# show threat-detection memory ciscoasa# show memory app-cache threat-detection detail
show threat-detection memory (8.3(1)+) é o comando documentado para memória de estatísticas avançadas. show memory app-cache threat-detection [detalhe] mostra o cache de partes do aplicativo.
Observe a categoria de ameaça em 733100 e correlacione-a com show threat-detection rate. Em seguida, verifique show asp drop pelos motivos de queda.
Por um motivo específico, use a captura ASP-drop:
ciscoasa# capture drop type asp-drop acl-drop ciscoasa# show capture drop 1 packet captured 1: 18:03:00.205189 10.10.10.10.60670 > 192.168.1.100.53: udp 34 Drop-reason: (acl-drop) Flow is denied by configured rule
Este exemplo é um pacote UDP/53 de 10.10.10.10 a 192.168.1.100.
Se o 733100 reportar a Varredura, habilite temporariamente a detecção de ameaças de varredura para que o ASA possa gravar os IPs do invasor e do alvo.
A detecção básica de ameaças conta principalmente o tráfego que o ASP já descartou, portanto, nenhuma ação extra de descarte é necessária. As exceções são ataques SYN e ameaças de varredura que envolvem tráfego que passa pelo ASA.
Se as quedas forem legítimas para o ambiente, aumente os intervalos de taxa básica. Se forem tráfego de ataque, bloqueie ou limite de taxa upstream (ACLs, QoS) antes do ASA.
Para ataques SYN, negue a origem em uma ACL ou ative a interceptação TCP para proteger o destino (que pode produzir uma ameaça de limite de conexão). Para a varredura, você pode negar em uma ACL ou ativar a detecção de ameaças de varredura com shun.
733101 lista o host/sub-rede de destino ou o invasor. Para obter as listas completas, execute o comando show threat-detection scanning-threat.
As capturas nas interfaces do invasor e do alvo ajudam a confirmar a verificação.
Se a varredura for inesperada, bloqueie ou limite de taxa upstream. Adicionar shun permite que o ASA descarte todos os pacotes do invasor pela duração configurada. Como último recurso, bloqueie o ASA com uma ACL ou interceptação TCP.
Se for um falso positivo, aumente os intervalos de taxa de ameaça de varredura.
733102 lista o destino de verificação de ameaça. Execute o comando show threat-detection shun somente para shuns de ameaça de verificação. Execute show shun para cada shun ativo no ASA (verificação, detecção de ameaças de VPN e shun manual).
Para um ataque real, bloqueie também o máximo possível de upstream, de modo que os dispositivos intermediários não processem o tráfego. Para falsos positivos, remova o shun de digitalização:
ciscoasa# clear threat-detection shun ciscoasa# clear threat-detection shun 10.1.1.6
Esses syslogs nomeiam um host já protegido pelo TCP Intercept. 733104 é a taxa de rajada; 733105 é a taxa média. Verificar:
ciscoasa# show threat-detection statistics top tcp-intercept Top 10 protected servers under attack (sorted by average rate) Monitoring window size: 30 mins Sampling interval: 30 secs ---------------------------------------------------------------------------------- 1 192.168.1.2:5000 inside 1249 9503 2249245 Last: 10.0.0.3 (0 secs ago) 2 192.168.1.3:5000 inside 10 10 6080 10.0.0.200 (0 secs ago)
Verifique se os limites de conexão são adequados. Bloqueie o invasor upstream, se possível. Para um falso positivo, ajuste as taxas de estatísticas de detecção de ameaças tcp-intercept.
733201 nomeia o serviço e o peer que excedeu o limite. Confirmar com:
ciscoasa# show threat-detection service ciscoasa# show threat-detection service remote-access-authentication details ciscoasa# show shun
Os IPs que foram evitados são retirados da lista de entradas de serviço; o contador de bloqueio é incrementado. Se o host for legítimo (PAT compartilhado, cliente configurado incorretamente), remova o shun:
ciscoasa# no shun 192.168.100.101 ciscoasa# no shun 192.168.100.101 interface outside
Se o endereço for rejeitado em mais de uma interface e você omitir a interface, no shun removerá o shun de apenas uma interface (route-lookup.) Especifique a interface para limpar interfaces adicionais; clear shun remove todos os shuns em todas as interfaces.
Não execute clear threat-detection shun para shuns de VPN; esse comando aplica-se apenas à varredura de detecções de ameaças.
Se usuários válidos estiverem sendo rejeitados, aumente a retenção/limite (especialmente atrás do PAT) ou desative o serviço até ajustá-lo.
Use estes métodos de laboratório para testar e solucionar problemas. Executá-los apenas em um ambiente isolado.
As categorias básicas de queda de ACL, firewall e verificação são consideradas como queda de ACL. Para ativá-los juntos:
1. Crie uma ACL na interface externa que negue o TCP a um destino interno (10.11.11.11):
access-list outside_in extended line 1 deny tcp any host 10.11.11.11 access-list outside_in extended permit ip any any access-group outside_in in interface outside
2. A partir de um invasor externo (10.10.10.10), execute uma verificação TCP SYN:
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
Note: O T5 executa o nmap o mais rápido possível. O PC do invasor ainda pode ser muito lento para taxas padrão. Reduza as taxas configuradas para a categoria que você deseja ver. Definir ARI e BRI como 0 faz com que a detecção básica de ameaças seja acionada independentemente da taxa.
3. As ameaças básicas são registradas, por exemplo:
%ASA-4-733100: [ Scanning] drop rate-1 exceeded. Current burst rate is 19 per second, max configured rate is 10; Current average rate is 9 per second, max configured rate is 5; Cumulative total count is 5538 %ASA-4-733100: [ ACL drop] drop rate-1 exceeded. Current burst rate is 19 per second, max configured rate is 0; Current average rate is 2 per second, max configured rate is 0; Cumulative total count is 1472 %ASA-4-733100: [ Firewall] drop rate-1 exceeded. Current burst rate is 18 per second, max configured rate is 0; Current average rate is 2 per second, max configured rate is 0; Cumulative total count is 1483
Note: Neste exemplo, a queda de ACL e o Firewall ARI/BRI foram definidos como 0, portanto eles sempre disparam (as taxas máximas configuradas são mostradas como 0).
1. Permitir TCP para o destino interno:
access-list outside_in extended line 1 permit tcp any host 10.11.11.11 access-group outside_in in interface outside
2. Se o alvo não existir ou redefinir conexões, um blackhole com uma entrada ARP estática:
arp inside 10.11.11.11 dead.dead.dead
3. Crie uma política de Interceptação TCP simples (limite embrionário/conn):
access-list tcp extended permit tcp any any
class-map tcp
match access-list tcp
policy-map global_policy
class tcp
set connection conn-max 2
service-policy global_policy global
A partir do invasor, faça a varredura:
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
ciscoasa(config)# show threat-detection statistics top tcp-intercept Top 10 protected servers under attack (sorted by average rate) Monitoring window size: 30 mins Sampling interval: 30 secs -------------------------------------------------------------------------------- 1 10.11.11.11:18589 outside 0 0 1 10.10.10.10 (36 secs ago) 2 10.11.11.11:47724 outside 0 0 1 10.10.10.10 (36 secs ago)
1. Permitir TCP para o destino (a detecção de ameaça de varredura rastreia apenas os fluxos criados e permitidos):
access-list outside_in extended line 1 permit tcp any host 10.11.11.11 access-group outside_in in interface outside
2. Se necessário, um buraco negro com ARP estático. As conexões redefinidas por um servidor real não são contadas.
arp inside 10.11.11.11 dead.dead.dead
3. Examine o invasor. Reduza as taxas ou defina ARI/BRI como 0 se o nmap não for rápido o suficiente.
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
4. Logs esperados quando o shun está habilitado:
%ASA-4-733100: [ Scanning] drop rate-1 exceeded. Current burst rate is 17 per second, max configured rate is 10; Current average rate is 0 per second, max configured rate is 5; Cumulative total count is 404 %ASA-4-733101: Host 10.10.10.10 is attacking. Current burst rate is 17 per second, max configured rate is 10; Current average rate is 0 per second, max configured rate is 5; Cumulative total count is 700 %ASA-4-733102: Threat-detection adds host 10.10.10.10 to shun list
| Revisão | Data de publicação | Comentários |
|---|---|---|
5.0 |
16-Sep-2026
|
Ortografia e gramática atualizadas, linhas horizontais inseridas em seções separadas para facilitar a leitura, URLs atualizadas para HTTPs e alertas fixos do CCW. |
4.0 |
20-Jun-2023
|
Republicar |
3.0 |
20-Jun-2023
|
PII atualizado, introdução, requisitos de estilo, tradução automática, gerúndios e formatação. |
1.0 |
31-Aug-2012
|
Versão inicial |