Segurança de rede - Firewalls

Quase toda organização de médio e grande porte está presente na Internet e possui uma rede organizacional conectada a ela. O particionamento de rede na fronteira entre a Internet externa e a rede interna é essencial para a segurança da rede. Às vezes, a rede interna (intranet) é referida como o lado “confiável” e a Internet externa como o lado “não confiável”.

Tipos de Firewall

Firewall é um dispositivo de rede que isola a rede interna da organização de uma rede externa / Internet maior. Pode ser um hardware, software ou sistema combinado que impede o acesso não autorizado de ou para a rede interna.

Todos os pacotes de dados que entram ou saem da rede interna passam pelo firewall, que examina cada pacote e bloqueia aqueles que não atendem aos critérios de segurança especificados.

A implantação de firewall no limite da rede é como agregar a segurança em um único ponto. É análogo a trancar um apartamento na entrada e não necessariamente em cada porta.

O firewall é considerado um elemento essencial para alcançar a segurança da rede pelas seguintes razões -

  • É improvável que a rede interna e os hosts estejam devidamente protegidos.

  • A Internet é um lugar perigoso para criminosos, usuários de empresas concorrentes, ex-funcionários descontentes, espiões de países hostis, vândalos, etc.

  • Para evitar que um invasor lance ataques de negação de serviço em recursos de rede.

  • Para evitar modificação / acesso ilegal a dados internos por um invasor externo.

O firewall é classificado em três tipos básicos -

  • Filtro de pacotes (sem estado e com estado)
  • Gateway de nível de aplicativo
  • Gateway de nível de circuito

Essas três categorias, no entanto, não são mutuamente exclusivas. Os firewalls modernos possuem uma combinação de recursos que podem colocá-los em mais de uma das três categorias.

Firewall de filtragem de pacotes sem estado e com estado

Neste tipo de implantação de firewall, a rede interna é conectada à rede externa / Internet por meio de um firewall de roteador. O firewall inspeciona e filtra os dados pacote por pacote.

Packet-filtering firewalls permitir ou bloquear os pacotes principalmente com base em critérios como endereços IP de origem e / ou destino, protocolo, números de porta de origem e / ou destino e vários outros parâmetros no cabeçalho IP.

A decisão pode ser baseada em outros fatores além dos campos de cabeçalho IP, como tipo de mensagem ICMP, TCP SYN e bits ACK, etc.

A regra de filtro de pacotes tem duas partes -

  • Selection criteria - É usado como condição e correspondência de padrões para a tomada de decisão.

  • Action field- Esta parte especifica a ação a ser executada se um pacote IP atender aos critérios de seleção. A ação pode ser bloquear (negar) ou permitir (permitir) o pacote através do firewall.

A filtragem de pacotes geralmente é realizada pela configuração de listas de controle de acesso (ACL) em roteadores ou switches. ACL é uma tabela de regras de filtragem de pacotes.

Conforme o tráfego entra ou sai de uma interface, o firewall aplica ACLs de cima para baixo a cada pacote de entrada, encontra os critérios correspondentes e permite ou nega os pacotes individuais.

Stateless firewallé uma espécie de ferramenta rígida. Ele examina o pacote e permite que ele atenda aos critérios, mesmo que não faça parte de nenhuma comunicação contínua estabelecida.

Portanto, esses firewalls são substituídos por stateful firewallsem redes modernas. Este tipo de firewalls oferece um método de inspeção mais aprofundado sobre os únicos métodos de inspeção de pacotes baseados em ACL de firewalls sem estado.

O firewall estável monitora a configuração da conexão e o processo de desativação para manter uma verificação das conexões no nível TCP / IP. Isso permite que eles monitorem o estado das conexões e determinem quais hosts têm conexões abertas e autorizadas em um determinado momento.

Eles fazem referência à base de regra apenas quando uma nova conexão é solicitada. Os pacotes pertencentes a conexões existentes são comparados à tabela de estados de conexões abertas do firewall e a decisão de permitir ou bloquear é tomada. Esse processo economiza tempo e também fornece segurança adicional. Nenhum pacote pode invadir o firewall, a menos que pertença a uma conexão já estabelecida. Ele pode atingir o tempo limite de conexões inativas no firewall, após o qual não aceita mais pacotes para essa conexão.

Gateways de aplicativos

Um gateway de nível de aplicativo atua como um nó de retransmissão para o tráfego de nível de aplicativo. Eles interceptam pacotes de entrada e saída, executam proxies que copiam e encaminham informações através do gateway e funcionam como umproxy server, evitando qualquer conexão direta entre um servidor ou cliente confiável e um host não confiável.

Os proxies são específicos do aplicativo. Eles podem filtrar pacotes na camada de aplicação do modelo OSI.

Proxies específicos de aplicativos

Um proxy específico de aplicativo aceita pacotes gerados apenas por um aplicativo específico para o qual foram projetados para copiar, encaminhar e filtrar. Por exemplo, apenas um proxy Telnet pode copiar, encaminhar e filtrar o tráfego Telnet.

Se uma rede depende apenas de um gateway de nível de aplicativo, os pacotes de entrada e saída não podem acessar serviços que não tenham proxies configurados. Por exemplo, se um gateway executa proxies FTP e Telnet, apenas os pacotes gerados por esses serviços podem passar pelo firewall. Todos os outros serviços estão bloqueados.

Filtragem em nível de aplicativo

Um gateway de proxy de nível de aplicativo examina e filtra pacotes individuais, em vez de simplesmente copiá-los e encaminhá-los cegamente pelo gateway. Os proxies específicos do aplicativo verificam cada pacote que passa pelo gateway, verificando o conteúdo do pacote até a camada do aplicativo. Esses proxies podem filtrar tipos específicos de comandos ou informações nos protocolos de aplicativos.

Os gateways de aplicativos podem restringir a execução de ações específicas. Por exemplo, o gateway pode ser configurado para evitar que os usuários executem o comando 'FTP put'. Isso pode impedir a modificação das informações armazenadas no servidor por um invasor.

Transparente

Embora os gateways no nível do aplicativo possam ser transparentes, muitas implementações exigem autenticação do usuário antes que eles possam acessar uma rede não confiável, um processo que reduz a verdadeira transparência. A autenticação pode ser diferente se o usuário for da rede interna ou da Internet. Para uma rede interna, uma lista simples de endereços IP pode permitir a conexão com aplicativos externos. Mas, do lado da Internet, uma autenticação forte deve ser implementada.

Um gateway de aplicação realmente retransmite segmentos TCP entre as duas conexões TCP nas duas direções (Cliente ↔ Proxy ↔ Servidor).

Para pacotes de saída, o gateway pode substituir o endereço IP de origem por seu próprio endereço IP. O processo é conhecido como Network Address Translation (NAT). Isso garante que os endereços IP internos não sejam expostos à Internet.

Gateway em nível de circuito

O gateway de nível de circuito é uma solução intermediária entre o filtro de pacotes e o gateway de aplicativo. Ele é executado na camada de transporte e, portanto, pode atuar como proxy para qualquer aplicativo.

Semelhante a um gateway de aplicativo, o gateway de nível de circuito também não permite uma conexão TCP ponta a ponta através do gateway. Ele configura duas conexões TCP e retransmite os segmentos TCP de uma rede para a outra. Mas, ele não examina os dados do aplicativo como o gateway de aplicativo. Portanto, às vezes é chamado de 'Pipe Proxy'.

MEIAS

SOCKS (RFC 1928) refere-se a um gateway de nível de circuito. É um mecanismo de proxy de rede que permite que os hosts de um lado de um servidor SOCKS obtenham acesso total aos hosts do outro lado sem exigir a acessibilidade direta de IP. O cliente se conecta ao servidor SOCKS no firewall. Em seguida, o cliente entra em uma negociação para o método de autenticação a ser usado e autentica com o método escolhido.

O cliente envia uma solicitação de retransmissão de conexão ao servidor SOCKS, contendo o endereço IP de destino desejado e a porta de transporte. O servidor aceita a solicitação após verificar se o cliente atende aos critérios básicos de filtragem. Em seguida, em nome do cliente, o gateway abre uma conexão com o host não confiável solicitado e monitora de perto o handshaking TCP que se segue.

O servidor SOCKS informa o cliente e, em caso de sucesso, começa a retransmitir os dados entre as duas conexões. Os gateways em nível de circuito são usados ​​quando a organização confia nos usuários internos e não deseja inspecionar o conteúdo ou os dados do aplicativo enviados pela Internet.

Implantação de firewall com DMZ

Um firewall é um mecanismo usado para controlar o tráfego de rede "para" e "fora" de uma rede interna organizacional. Na maioria dos casos, esses sistemas têm duas interfaces de rede, uma para a rede externa, como a Internet, e outra para o lado interno.

O processo de firewall pode controlar rigidamente o que é permitido atravessar de um lado para o outro. Uma organização que deseja fornecer acesso externo ao seu servidor web pode restringir todo o tráfego que chega ao firewall esperado para a porta 80 (a porta http padrão). Todo o outro tráfego, como tráfego de e-mail, FTP, SNMP, etc., não é permitido através do firewall para a rede interna. Um exemplo de firewall simples é mostrado no diagrama a seguir.

Na implantação simples acima, embora todos os outros acessos externos sejam bloqueados, é possível que um invasor entre em contato não apenas com um servidor web, mas com qualquer outro host na rede interna que deixou a porta 80 aberta por acidente ou de outra forma.

Conseqüentemente, o problema que a maioria das organizações enfrenta é como habilitar o acesso legítimo a serviços públicos, como web, FTP e e-mail, ao mesmo tempo que mantém a segurança da rede interna. A abordagem típica é implantar firewalls para fornecer uma Zona Desmilitarizada (DMZ) na rede.

Nesta configuração (ilustrada no diagrama a seguir), dois firewalls são implantados; um entre a rede externa e o DMZ, e outro entre o DMZ e a rede interna. Todos os servidores públicos são colocados na DMZ.

Com esta configuração, é possível ter regras de firewall que permitem o acesso público aos servidores públicos, mas o firewall interno pode restringir todas as conexões de entrada. Por ter DMZ, os servidores públicos são fornecidos com proteção adequada em vez de colocá-los diretamente na rede externa.

Sistema de detecção / prevenção de intrusão

Os firewalls de filtragem de pacotes operam com base em regras envolvendo apenas cabeçalhos TCP / UDP / IP. Eles não tentam estabelecer verificações de correlação entre sessões diferentes.

O Sistema de detecção / prevenção de intrusão (IDS / IPS) realiza a inspeção profunda de pacotes (DPI) observando o conteúdo do pacote. Por exemplo, verificar cadeias de caracteres no pacote em relação ao banco de dados de vírus conhecidos, cadeias de ataque.

Os gateways de aplicativo examinam o conteúdo do pacote, mas apenas para aplicativos específicos. Eles não procuram dados suspeitos no pacote. O IDS / IPS procura dados suspeitos contidos em pacotes e tenta examinar a correlação entre vários pacotes para identificar quaisquer ataques, como varredura de portas, mapeamento de rede e negação de serviço e assim por diante.

Diferença entre IDS e IPS

IDS e IPS são semelhantes na detecção de anomalias na rede. IDS é uma ferramenta de 'visibilidade' enquanto IPS é considerada uma ferramenta de 'controle'.

Os Sistemas de Detecção de Intrusão ficam do lado da rede, monitorando o tráfego em muitos pontos diferentes e fornecem visibilidade do estado de segurança da rede. Em caso de relatório de anomalia pelo IDS, as ações corretivas são iniciadas pelo administrador da rede ou outro dispositivo na rede.

Os Sistemas de Prevenção de Intrusão são como um firewall e ficam em linha entre duas redes e controlam o tráfego que passa por elas. Ele impõe uma política especificada na detecção de anomalias no tráfego da rede. Geralmente, ele descarta todos os pacotes e bloqueia todo o tráfego da rede ao perceber uma anomalia até que uma anomalia seja tratada pelo administrador.

Tipos de IDS

Existem dois tipos básicos de IDS.

  • Signature-based IDS

    • Ele precisa de um banco de dados de ataques conhecidos com suas assinaturas.

    • A assinatura é definida por tipos e ordem de pacotes que caracterizam um ataque específico.

    • A limitação desse tipo de IDS é que apenas ataques conhecidos podem ser detectados. Este IDS também pode lançar um alarme falso. O alarme falso pode ocorrer quando um fluxo de pacote normal corresponde à assinatura de um ataque.

    • Um exemplo conhecido de IDS de código aberto público é o IDS “Snort”.

  • Anomaly-based IDS

    • Este tipo de IDS cria um padrão de tráfego de operação normal da rede.

    • Durante o modo IDS, ele observa os padrões de tráfego que são estatisticamente incomuns. Por exemplo, carga incomum de ICMP, crescimento exponencial em varreduras de portas, etc.

    • A detecção de qualquer padrão de tráfego incomum gera o alarme.

    • O principal desafio enfrentado neste tipo de implantação de IDS é a dificuldade em distinguir entre o tráfego normal e o tráfego incomum.

Resumo

Neste capítulo, discutimos os vários mecanismos empregados para o controle de acesso à rede. A abordagem à segurança de rede por meio do controle de acesso é tecnicamente diferente da implementação de controles de segurança em diferentes camadas de rede discutidas nos capítulos anteriores deste tutorial. No entanto, embora as abordagens de implementação sejam diferentes, elas são complementares entre si.

O controle de acesso à rede é composto por dois componentes principais: autenticação do usuário e proteção dos limites da rede. RADIUS é um mecanismo popular para fornecer autenticação central na rede.

O Firewall fornece proteção de limite de rede, separando uma rede interna da Internet pública. O firewall pode funcionar em diferentes camadas do protocolo de rede. O IDS / IPS permite monitorar as anomalias no tráfego da rede para detectar o ataque e tomar medidas preventivas contra o mesmo.