Segurança : Dispositivos de segurança Cisco PIX 500 Series

ASA/PIX : Gerenciando Pings ICMP e Traceroute

1 Julho 2009 - Tradução Manual
Outras Versões: Versão em PDFpdf | Tradução por Computador (29 Julho 2013) | Inglês (3 Novembro 2009) | Feedback

Índice

Introdução
Pré-requisitos
      Requisitos
      Componentes Utilizados
      Convenções
Diagrama de Rede
Envio de um Ping Através do PIX
      PIX/ASA Software Versões 7.x
      PIX Software Versões 5.0.1 a 6.3.3
      PIX Software Versões 4.2(2) a 5.0.1
      PIX Software Versões 4.1(6) a 4.2(2)
Envio de Pings para as Interfaces do Próprio PIX
Entrada do Comando traceroute Através do PIX
Como Forçar a Exibição do Firewall em um Traceroute no ASA/PIX
      Exemplo
Mensagem de Erro - 313005
Tipos de Mensagem ICMP (RFC 792)
Informações que Devem Ser Coletadas ao Abrir uma Solicitação de Serviço
Discussões relacionadas da comunidade de suporte da Cisco

Introdução

No PIX Firewall, os pings ICMP (Internet Control Message Protocol) e o traceroute são tratados de formas diferentes de acordo com a versão dos códigos ASA e PIX.

O ICMP de entrada através do PIX/ASA é negado por padrão. O ICMP de saída é permitido, mas a resposta recebida é negada por padrão.

Pré-requisitos

Requisitos

Não existem pré-requisitos específicos para este documento.

Componentes Utilizados

As informações deste documento são baseadas nestas versões de software e hardware:

  • PIX Software versões 4.1(6) e posterior

  • Cisco ASA 5500 Series Security Appliance que executa a versão 7.x e versões posteriores

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. Se a sua rede estiver em um ambiente de produção, esteja ciente do impacto potencial de qualquer comando.

Convenções

Consulte as Convenções de Dicas Técnicas da Cisco para obter mais informações sobre convenções de documentos.

Diagrama de Rede

31-new.gif

Nota: Os esquemas de endereçamento IP utilizados nesta configuração não são legalmente roteáveis na Internet. Eles são endereços da RFC 1918 que foram usados em um ambiente de laboratório.

Envio de um Ping Através do PIX

PIX/ASA Software Versões 7.x

Entrada de Pings

Os pings iniciados externamente ou a partir de outra interface de baixa segurança do PIX são negados por padrão. Os pings podem ser permitidos com o uso de listas de acesso e estáticas ou apenas de listas de acesso. Neste exemplo, é permitido o acesso de pings externos a um servidor interno do PIX. Uma conversão estática é criada entre o endereço interno (10.1.1.5) e o endereço externo (192.168.1.5).

pix(config)#static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255
pix(config)#access-list 101 permit icmp any host 192.168.1.5 echo
pix(config)#access-group 101 in interface outside

Saída de Pings

Há duas opções no PIX 7.x que permitem aos usuários internos efetuar ping em hosts externos. A primeira é configurar uma regra específica para cada tipo de mensagem de eco.

Por exemplo:

access-list 101 permit icmp any any echo-reply
access-list 101 permit icmp any any source-quench
access-list 101 permit icmp any any unreachable
access-list 101 permit icmp any any time-exceeded
access-group 101 in interface outside

Isso permitirá que somente essas mensagens de retorno passem pelo firewall quando um usuário interno efetuar ping em um host externo. Os outros tipos de mensagem de status ICMP poderão ser hostis, e o firewall bloqueará todas as outras mensagens ICMP.

Outra opção é configurar a inspeção de ICMP. Isso permitirá que um endereço IP confiável passe pelo firewall e que as respostas sejam enviadas somente ao endereço confiável. Dessa maneira, os hosts em todas as interfaces internas poderão efetuar ping nos hosts externos, e o firewall permitirá que as respostas retornem. Outra vantagem é que você pode monitorar o tráfego ICMP que passa pelo firewall. Neste exemplo, icmp inspection é adicionado à política de inspeção global padrão.

Por exemplo:

policy-map global_policy
    class inspection_default
     inspect icmp

Ping em Outra Interface

Não será possível acessar a interface interna do PIX externamente e vice-versa, a menos que management-access esteja configurado no modo de configuração global. Uma vez ativado management-access, o acesso Telnet, SSH ou HTTP ainda deverá ser configurado para os hosts desejados.

pix(config)#management-access inside
pix(config)#show running-config management-access
management-access inside

PIX Software Versões 5.0.1 a 6.3.3

O ICMP de entrada através do PIX é negado por padrão; o ICMP de saída é permitido, mas a resposta recebida é negada por padrão.

Nota: A versão 6.3.3 é a versão mais recente de código disponível no momento da publicação. Para verificar as possíveis alterações em versões posteriores, consulte as release notes.

Entrada de Pings

O ICMP de entrada pode ser permitido com uma instrução conduit ou access-list, dependendo de qual delas é utilizada no PIX. Não misture essas instruções.

Este exemplo mostra como permitir o ICMP do dispositivo 10.1.1.5 interno (estático para 192.168.1.5) por todos os dispositivos externos:

static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0

!--- e de

conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo

!--- ou

access-list 101 permit icmp any host 192.168.1.5 echo
access-group 101 in interface outside

Saída de Pings

As respostas ao ICMP de saída podem ser permitidas com uma instrução conduit ou access-list, dependendo de qual delas é utilizada no PIX. Não misture essas instruções.

Este exemplo mostra como permitir respostas para solicitações ICMP iniciadas pelo dispositivo 10.1.1.5 interno (estático para 192.168.1.5) a partir de todos os dispositivos externos:

static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0

!--- e de

conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo-reply
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 source-quench
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 unreachable
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 time-exceeded

!--- ou

access-list 101 permit icmp any host 192.168.1.5 echo-reply
access-list 101 permit icmp any host 192.168.1.5 source-quench
access-list 101 permit icmp any host 192.168.1.5 unreachable
access-list 101 permit icmp any host 192.168.1.5 time-exceeded
access-group 101 in interface outside

PIX Software Versões 4.2(2) a 5.0.1

O ICMP de entrada através do PIX/ASA é negado por padrão. O ICMP de saída é permitido, mas a resposta recebida é negada por padrão.

Entrada de Pings

O ICMP de entrada pode ser permitido com uma instrução conduit.

Este exemplo mostra como permitir o ICMP do dispositivo 10.1.1.5 interno (estático para 192.168.1.5) por todos os dispositivos externos:

static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo

Saída de Pings

É possível permitir respostas ao ICMP de saída com uma instrução conduit.

Este exemplo mostra como permitir respostas para solicitações ICMP iniciadas pelo dispositivo 10.1.1.5 interno (estático para 192.168.1.5) a partir de todos os dispositivos externos:

static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo-reply
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 source-quench
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 unreachable
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 time-exceeded

PIX Software Versões 4.1(6) a 4.2(2)

O ICMP de entrada através do PIX/ASA é negado por padrão. O ICPM de saída é permitido por padrão.

Entrada de Pings

O ICMP de entrada pode ser permitido com uma instrução conduit.

Este exemplo mostra como permitir o ICMP do dispositivo 10.1.1.5 interno (estático para 192.168.1.5) por todos os dispositivos externos:

static (inside), outside) 192.168.1.5 10.1.1.5
conduit 192.168.1.5 8 icmp 0.0.0.0 0.0.0.0

!--- O 8 representa a solicitação de eco; estes são da RFC 792.

Consulte a seção Tipos de Mensagem ICMP (RFC 792) deste documento para obter mais informações.

Saída de Pings

São permitidos ICMP de saída e respostas por padrão.

Envio de Pings para as Interfaces do Próprio PIX

No PIX Software versões 4.1(6) a 5.2.1, é permitido o tráfego ICMP para a interface do próprio PIX. O PIX não pode ser configurado para não responder. Não é possível efetuar ping nas interfaces localizadas na extremidade oposta do PIX em nenhuma versão. Com base no diagrama de rede deste documento:

  • Não é possível efetuar ping em 10.1.1.1 a partir de 10.1.1.5.

  • Não é possível efetuar ping em 192.168.1.1 externamente.

  • Não é possível efetuar ping em 192.168.1.1 a partir de 10.1.1.5.

  • Não é possível efetuar ping em 10.1.1.1 externamente.

No PIX Software versões 5.2.1, o ICMP ainda é permitido por padrão, mas as respostas do ping PIX recebidas de suas próprias interfaces podem ser desativadas com o comando icmp (ou seja, um "PIX stealth").

icmp permit|deny [host] src_addr [src_mask] [type] int_name

Neste exemplo, o PIX não pode enviar respostas de eco para solicitações de eco:

icmp deny any echo outside

Como no caso das listas de acesso, na ausência de instruções permit, também há uma negação implícita de todo o outro tráfego ICMP.

Esse comando permite pings da rede imediatamente fora do PIX:

icmp permit 192.168.1.0 255.255.255.0 echo outside

Como no caso das listas de acesso, na ausência de instruções permit, também há uma negação implícita de todo o outro tráfego ICMP.

Entrada do Comando traceroute Através do PIX

Problema: O PIX Firewall oculta todas as redes internas na saída de traceroutes de entrada.

Resolução:

O PIX não oferece suporte ao comando traceroute. Quando um comando traceroute é executado externamente, o PIX não exibe o endereço IP de sua própria interface nem os endereços IP das redes internas. O endereço de destino é exibido várias vezes para cada loop interno.

Os traceroutes funcionam apenas com endereços IP NAT (Network Address Translation) estáticos e não com endereços IP PAT (Port Address Translation). Por exemplo, um cliente na Internet com o endereço 209.165.202.130 executa um traceroute para um servidor Web interno do PIX com o endereço público 209.165.201.25 e o endereço privado 10.1.3.25. Há dois roteadores entre o PIX e o servidor Web interno. A saída de traceroute na máquina cliente tem a seguinte aparência:

Target IP address: 209.165.201.25 Source address: 209.165.202.130

 Tracing the route to 209.165.201.25
  1 209.165.202.128 4 msec 3 msec 4 msec
  2 209.165.201.25 3 msec 5 msec 0 msec
  3 209.165.201.25 4 msec 6 msec 3 msec
  4 209.165.201.25 3 msec 2 msec 2 msec 

No PIX versão 6.3 e posterior, esse comportamento poderá ser revertido com a execução do comando de erro icmp fixup protocol. Quando esse recurso é ativado, o PIX cria xlates para saltos intermediários que enviam mensagens de erro ICMP (Internet Control Message Protocol), com base na configuração do NAT estático. O PIX substitui o pacote pelos endereços IP convertidos.

Quando o NAT é ativado no PIX 7.0, os endereços IP das interfaces do PIX e os endereços IP reais dos saltos intermediários não podem ser vistos. Entretanto, no PIX 7.0, o NAT não é essencial e pode ser desativado com o comando no nat-control. Se a regra de NAT for removida, será possível ver o endereço IP real se ele for roteável.

Para obter mais informações, consulte a seção Entrada do Comando traceroute Através do PIX do documento PIX e o Comando traceroute.

Como Forçar a Exibição do Firewall em um Traceroute no ASA/PIX

ciscoasa(config)#class-map class-default
ciscoasa(config)#match any


!--- Este mapa de classes existe por padrão.


ciscoasa(config)#policy-map global_policy


!--- Este mapa de políticas existe por padrão.


ciscoasa(config-pmap)#class class-default


!--- Adicione outro mapa de classes a esta diretiva.


ciscoasa(config-pmap-c)#set connection decrement-ttl


!--- Decremente o campo IP TTL para pacotes que atravessam o firewall.
!--- Por padrão, o TTL não é decrementar de forma oculta (de algum modo) o firewall.


ciscoasa(config-pmap-c)#exit
ciscoasa(config-pmap)#exit
ciscoasa(config)#service-policy global_policy global


!--- Esta política de serviço existe por padrão.

WARNING: Policy map global_policy is already configured as a service policy

ciscoasa(config)#icmp unreachable rate-limit 10 burst-size 5


!--- Ajuste as respostas de inatingível de ICMP:
!--- O padrão é rate-limit 1 burst-size 1.
!--- O padrão resultará em timeouts para o salto ASA:


ciscoasa(config)#access-list outside-in-acl remark Allow ICMP Type 11 for Windows tracert
ciscoasa(config)#access-list outside-in-acl extended permit icmp any any time-exceeded


!--- A lista de acesso para a extremidade remota do tráfego ICMP (neste caso,
!--- a interface externa) precisa ser modificada para permitir respostas ICMP tipo 11
!--- time-exceeded):

ciscoasa(config)#access-group outside-in-acl in interface outside


!--- Aplica a lista de acesso à interface externa.

ciscoasa(config)#

Exemplo

Topologia

31b.gif

Nota: Os esquemas de endereço IP utilizados nesta configuração não são legalmente roteáveis na Internet. Eles são endereços da RFC 1918 que foram usados em um ambiente de laboratório.

Antes de aplicar a alteração de política:

C:\>tracert -d www.yahoo.com.

Tracing route to www.yahoo-ht3.akadns.net [192.168.93.52]
over a maximum of 30 hops:

  1     1 ms    <1 ms    <1 ms  172.16.2.1

!--- O primeiro salto mostrado é Roteador 1

  2     6 ms     6 ms     5 ms  192.168.100.101
(etc...)

Depois de aplicar a alteração de política:

C:\>tracert -d www.yahoo.com.

Tracing route to www.yahoo-ht3.akadns.net [192.168.93.52]
over a maximum of 30 hops:

  1    <1 ms    <1 ms    <1 ms  172.16.2.254
  
!--- O primeiro salto mostrado é ASA

  2    <1 ms    <1 ms    <1 ms  172.16.2.1

!---  Roteador 1 agora é o segundo salto

  3     6 ms     6 ms     6 ms  192.168.100.101
 (etc...)

Mensagem de Erro - 313005

Mensagem de Erro

%PIX|ASA-4-313005: No matching connection for ICMP error message:
icmp_msg_info on interface_name interface. Original IP payload:
embedded_frame_info icmp_msg_info = icmp src src_interface_name:src_address dst
dest_interface_name:dest_address (type icmp_type, code icmp_code)
embedded_frame_info = prot src source_address/source_port dst
dest_address/dest_port

Explicação

Os pacotes de erro ICMP são descartados pelo Security Appliance porque as mensagens de erro ICMP não se referem a nenhuma sessão já estabelecida no Security Appliance.

Ação Recomendada

Se a causa for um ataque, você poderá negar o host com ACLs.

Tipos de Mensagem ICMP (RFC 792)

Número da Mensagem

Mensagem

0

Echo Reply

3

Destination Unreachable

4

Source Quench

5

Redirect

8

Echo

11

Time Exceeded

12

Parameter Problem

13

Timestamp

14

Timestamp Reply

15

Information Request

16

Information Reply

Informações que Devem Ser Coletadas ao Abrir uma Solicitação de Serviço

Se você ainda precisar de assistência após seguir os passos de troubleshooting descritos aqui e desejar abrir uma solicitação de serviço no TAC da Cisco, certifique-se de incluir as informações a seguir para fazer o troubleshooting do PIX Firewall.

  • Descrição do problema e detalhes relevantes de topologia

  • Troubleshooting realizado antes da abertura da solicitação de serviço

  • Saída do comando show tech-support

  • Saída do comando show log após a execução do comando logging buffered debugging ou capturas do console que demonstrem o problema (se disponível)

Anexe os dados coletados à sua solicitação de serviço em formato de texto simples não compactado (.txt). Você pode anexar informações à sua solicitação de serviço carregando-as com a Service Request Query Tool (somente clientes registrados). Se você não conseguir acessar essa ferramenta, envie as informações na forma de um anexo de email para attach@cisco.com com o número da solicitação de serviço na linha de assunto da sua mensagem.


Discussões relacionadas da comunidade de suporte da Cisco

A Comunidade de Suporte da Cisco é um fórum onde você pode perguntar e responder, oferecer sugestões e colaborar com colegas.


Document ID: 15246