Conceito de Filtragem de Pacotes e Firewall

Os primeiros firewalls usavam a filtragem de pacote somente para proteger a rede interna de usuários externos. O firewall verificava o cabeçalho de cada pacote que entra na rede interna e tomava a decisão de permitir ou bloquear o pacote baseado no IP usado e o numero da porta especificado no cabeçalho, na parte de TCP ou UDP.

Filtragem de pacotes é o bloqueio ou liberação da passagem de pacotes de dados de maneira seletiva, conforme eles atravessam a interface de rede. Em sistemas Linux, por exemplo, a filtragem de pacotes é implementada diretamente no kernel. Esses filtros inspecionam os pacotes com base nos cabeçalhos de transporte, rede ou até mesmo enlace. Os critérios mais utilizados são os endereços IP e portas TCP/UDP de origem e destino.

Alguns filtros de pacotes também são capazes de transformar o conteúdo dos pacotes, como é o caso do netfilter do Linux. Normalmente as pessoas se referem ao filtro de pacotes do Linux pelo nome de iptables. Na verdade, o iptables é uma utilitário de linha de comando a partir do qual podem ser configuradas as regras de filtragem do netfilter.

O netfilter é formado por um conjunto de cadeias. Cada cadeia é um ponto no caminho que um pacote IP percorre ao entrar ou sair de uma máquina. A figura mostra as cadeias do netfilter.

Estrutura do Netfilter

Estrutura do Netfilter

Existem dois tipos de políticas aplicáveis aos pacotes filtrados:

  • Permissivo – Aceita tudo que não é expressamente proibido.
  • Restritivo – Nega tudo e só encaminha o que for expressamente permitido.

A filtragem de pacotes IP é normalmente feita usando um roteador de filtragem de pacotes, quando tais pacotes passam pelo roteador. Normalmete, um roteador de filtragem de pacotes pode filtrar pacotes baseados em alguns ou todos os campos abaixo:

  • Endereço IP de origem;
  • Endereço IP de destino;
  • Portas TCP/UDP de origem;
  • Portas TCP/UDP de destino.

Estes sistemas analisam individualmente os pacotes à medida em que estes são transmitidos da Camada de Enlace (camada 2 do modelo ISO/OSI) para a Camada de Rede (camada 3 do modelo ISO/OSI).

A principal desvantagem desse tipo de tecnologia é a falta de controle de estado do pacote, o que permite que agentes maliciosos possam produzir pacotes simulados (IP Spoofing) para serem injetados na sessão.

Filtragem por política é uma forma diferente de se escrever um conjunto de regras de filtragem. Uma política é definida, a qual configura as regras para quais tipos de tráfego são permitidos e quais tipos são bloqueados. Os pacotes são então classificados, baseando-se no critério tradicional de endereço IP/porta de origem/destino, protocolo, etc.

Firewall

Firewall é um sistema de proteção de redes internas contra acessos não autorizados originados de uma rede não confiável (Internet), ao mesmo tempo que permite o acesso controlado da rede interna à Internet. Eles podem ser um hardware e/ou software, tendo diferentes tipos de proteção como: pacotes, e-mail, web, etc.

Apesar de se tratar de um conceito geralmente relacionado a proteção contra invasões, o firewall não possui capacidade de analisar toda a extensão do protocolo, ficando geralmente restrito ao nível 4, de Transporte, da Camada OSI.

A complexidade de instalação depende do tamanho da rede, da política de segurança, da quantidade de regras que controlam o fluxo de entrada e saída de informações e do grau de segurança desejado.

A análise da arquitetura de implementação de firewalls traz os conceito de Bastion Host e DMZ. Bastion Hosts são servidores cuidadosamente implementados e de alta segurança que mantém contato com a rede externa, consequentemente estando expostos aos riscos de ataques.

Algumas de suas características são:

  • Todo tráfego entre a rede interna e a externa (entrada e saída) deve passar pelo Firewall;
  • Somente o tráfego autorizado passará pelo Firewall, todo o resto será bloqueado;
  • O Firewall em si deve ser seguro e impenetrável;

Tipos de controles realizados:

  • Controle de Serviço: determina quais serviços Internet (tipos) estarão disponíveis para acesso;
  • Controle de Sentido: determina o sentido de fluxo no qual serviços podem ser iniciados;
  • Controle de Usuário: controla o acesso baseado em qual usuário está requerendo (tipicamente os internos, ou externo via VPN);
  • Controle de Comportamento: controla como cada serviço pode ser usado (ex: anti-spam);

Proxy Firewall / Gateways de Aplicação

Os conceitos de gateways de aplicação (application-level gateways) e “bastion hosts” foram introduzidos por Marcus Ranum em 1995. Trabalhando como uma espécie de eclusa, o firewall de proxy trabalha recebendo o fluxo de conexão, tratando as requisições como se fossem uma aplicação e originando um novo pedido sob a responsabilidade do mesmo firewall (non-transparent proxy) para o servidor de destino. A resposta para o pedido é recebida pelo firewall e analisada antes de ser entregue para o solicitante original.

Embora os firewalls de filtro de pacotes e statefull apresentem uma diferenças em como pacotes de uma determinada conexão são tratados, ambos se baseiam fundamentalmente nas informações do cabeçalho dos protocolos da camada de transporte.

Um application gateway é um firewall stateful capaz de inspecionar os dados da camada de aplicação para tomar decisões mais inteligentes sobre a conexão. Exemplos de controles realizados por um application gateway são autenticação, filtros de URL e filtros de conteúdo.

Um application gateway pode ser utilizado para bloquear, por exemplo, aplicações peer to peer (eMule, Kaaza etc.), ou mensageiros instantâneos (IRC, MSN etc.) que tentam se esconder debaixo do protocolo HTTP. No entanto, os application gateway não são capazes de inspecionar dados criptografados via SSL, por exemplo.

Os gateways de aplicações conectam as redes corporativas à Internet através de estações seguras (chamadas de bastion hosts) rodando aplicativos especializados para tratar e filtrar os dados (os proxy firewalls). Estes gateways, ao receberem as requisições de acesso dos usuários e realizarem uma segunda conexão externa para receber estes dados, acabam por esconder a identidade dos usuários nestas requisições externas, oferecendo uma proteção adicional contra a ação dos crackers.

Firewall Statefull

Um firewall de filtro de pacotes é dito um firewall sem estado. Isso porque ele trata cada um dos pacotes que atravessam a interface de forma independente.

As conexões TCP são caracterizadas por uma série de atributos como IP’s de origem e destino, portas de origem de destino, números de sequência etc. Em conjunto, esses atributos determinam o estado de uma conexão TCP.

Ao contrário dos firewalls de filtro de pacotes, um firewal stateful não filtra pacotes de forma isolada, mas sim com base em informações sobre o estado de conexões pré-estabelecidas. Para um firewall stateful, a comunicação bi-direcional é implícita, de forma que não há necessidade de se escrever regras de filtragem para cada um dos sentidos. A seguir são mostrados alguns exemplos de ragras para um firewall stateful utilizando a sintaxe do iptables.

Com a explosão do comércio eletrônico, percebeu-se que mesmo a última tecnologia em filtragem de pacotes para TCP/IP poderia não ser tão efetiva quanto se esperava. Com todos os investimentos dispendidos em tecnologia de stateful firewalls, os ataques continuavam a prosperar de forma avassaladora. Somente a filtragem dos pacotes de rede não era mais suficiente. Os ataques passaram a se concentrar nas características (e vulnerabilidades) específicas de cada aplicação. Percebeu-se que havia a necessidade de desenvolver um novo método que pudesse analisar as particularidades de cada protocolo e tomar decisões que pudessem evitar ataques maliciosos contra uma rede.

Se comparado com o modelo tradicional de Firewall, orientado a redes de dados, o Firewall de Aplicação é frequentemente instalado junto à plataforma da aplicação, atuando como uma espécie de procurador para o acesso ao servidor (Proxy).

Este tipo de Firewall conta com o Stateful Inspection para inspecionar pacotes e tráfego de dados baseado nas características de cada aplicação, nas informações associadas a todas as 7 camadas do modelo OSI (e não apenas na camada de rede ou de aplicação) e no estado das conexões e sessões ativas

 

Questões de Concursos

(CESPE – 2011 – TJ-ES – Analista Judiciário – Análise de Suporte – Específicos) O denominado firewall de estado é um tipo de firewall mais simples que atua na camada de rede (camada 3), para filtrar tráfego a partir de endereços IP de origem e destino e a partir da porta TCP ou UDP.
(  ) Certo    (  ) Errado

(CESPE – 2011 – Correios – Analista de Correios – Analista de Sistemas – Suporte de Sistemas) As ferramentas de firewall conhecidas como filtro de pacotes trabalham na camada de transporte e de rede do protocolo TCP/IP e tratam os protocolos TCP e UDP e as portas de acesso aos serviços.
(  ) Certo    (  ) Errado

(CESPE – 2010 – MPU – Técnico de Informática) Configurar o firewall da rede para bloquear os pacotes destinados a qualquer servidor de HTTP externo é medida que impede que os funcionários dessa empresa utilizem os computadores para acessar a Internet.
(  ) Certo    (  ) Errado 

(CESPE – 2010 – MPU – Analista de Informática – Perito) No caso de um usuário remoto acessar rede com firewall de aplicativo proxy ou gateway de aplicativo, os pacotes IP serão encaminhados à rede interna, na qual, então, o proxy gerencia a conexão.
(  ) Certo    (  ) Errado 

(CESPE – 2010 – MPU – Analista de Informática – Perito) Firewall pode autorizar, negar ou descartar um pacote de dados como resultado da comparação entre uma tabela de regras e o resultado da análise de cabeçalhos de pacotes que contém os protocolos utilizados, assim como as portas e os endereços IP de origem e destino do pacote.
(  ) Certo    (  ) Errado  

(CESPE – 2010 – ABIN – OFICIAL TÉCNICO DE INTELIGÊNCIA – ÁREA DE DESENVOLVIMENTO E MANUTENÇÃO DE SISTEMAS) Um firewall Linux pode ser implementado por meio de um servidor proxy. Nesse caso, as devidas autorizações do usuário e as demais opções de configuração são conferidas em uma tabela.

(  ) Certo    (  ) Errado

(CESPE – 2010 – BASA – Técnico Científico – Tecnologia da Informação – Suporte Técnico) É importante que o sistema operacional da máquina na qual o firewall está sendo executado seja confiável e seguro para que ela não seja facilmente invadida e o firewall, comprometido.
(  ) Certo    (  ) Errado 

(ESAF – 2004 – CGU – Analista de Finanças e Controle – Área – Tecnologia da Informação – Prova 3) Analise as seguintes afirmações relativas a tipos e configuração de Firewall:
I. A conversão de endereços de rede NAT permite que uma rede utilize um conjunto de endereços de rede internamente e use um conjunto diferente ao lidar com redes externas.
II. O sistema de conversão de endereços de rede pode modificar os números de portas de origem e destino (podendo ser chamado de conversão de portas e endereços – PAT).
III. Um firewall com arquitetura de host dual-homed é construído com um computador que tem apenas uma interface operando nos dois sentidos, isto é, recebe um pacote, analisa e devolve ao meio físico pela mesma interface de rede. Esta arquitetura, muito útil para pequenas empresas, permite configurar um computador como firewall e roteador ao mesmo tempo.
IV. Uma regra de filtragem tem sua segurança próxima do ideal quando utiliza como parâmetro principal o endereço de origem.

Estão corretos os itens:
a) I e II
b) II e III
c) III e IV
d) I e III
e) II e IV

(CESGRANRIO – 2005 – MPE-RO – Analista de Redes e Comunicação de Dados) Qual das funções abaixo um firewall NÃO realiza em uma rede?
a) Bloquear acesso não autorizado aos aplicativos remotos que podem ser perigosos para a rede.
b) Criar redes privadas virtuais (VPN).
c) Filtrar URL, negando acesso para sites não autorizados.
d) Suportar varreduras de vírus no correio eletrônico.
e) Tratar códigos maliciosos de ataques do tipo Cavalode- Tróia.

 

Gabarito e Comentários das Questões

(CESPE – 2011 – TJ-ES – Analista Judiciário – Análise de Suporte – Específicos) O denominado firewall de estado é um tipo de firewall mais simples que atua na camada de rede (camada 3), para filtrar tráfego a partir de endereços IP de origem e destino e a partir da porta TCP ou UDP.

Errado. O Firewall de Estado (Stateful) é um firewall mais robusto que a filtragem de pacotes e atua em todas as 7 camadas do modelo OSI. A descrição dada na questão é de um “filtro de pacotes”.

(CESPE – 2011 – Correios – Analista de Correios – Analista de Sistemas – Suporte de Sistemas) As ferramentas de firewall conhecidas como filtro de pacotes trabalham na camada de transporte e de rede do protocolo TCP/IP e tratam os protocolos TCP e UDP e as portas de acesso aos serviços.

Correto.

(CESPE – 2010 – MPU – Técnico de Informática) Configurar o firewall da rede para bloquear os pacotes destinados a qualquer servidor de HTTP externo é medida que impede que os funcionários dessa empresa utilizem os computadores para acessar a Internet.

Errado. A Internet não é composta somente por um serviço que roda através de um servidor HTTP. Ainda temos os servidores de e-mails (IMAP/POP3/SMTP), mensageiros instantâneos, servidores de arquivos com FTP, e outros serviços. Baseado na questão, o filtro de pacotes apenas restringiu o acesso ao serviço HTTP, mas não impediu.

(CESPE – 2010 – MPU – Analista de Informática – Perito) No caso de um usuário remoto acessar rede com firewall de aplicativo proxy ou gateway de aplicativo, os pacotes IP serão encaminhados à rede interna, na qual, então, o proxy gerencia a conexão.

Errado. O Proxy não tem a função de encaminhar os pacotes, mas sim de ser um “interprete” entre a conexão externa e a interna. Ao receber uma requisição, ele irá gerar uma outra para o destino final, não encaminhando o IP original, mas sim o seu próprio IP.

(CESPE – 2010 – MPU – Analista de Informática – Perito) Firewall pode autorizar, negar ou descartar um pacote de dados como resultado da comparação entre uma tabela de regras e o resultado da análise de cabeçalhos de pacotes que contém os protocolos utilizados, assim como as portas e os endereços IP de origem e destino do pacote.

Correto.

(CESPE – 2010 – ABIN – OFICIAL TÉCNICO DE INTELIGÊNCIA – ÁREA DE DESENVOLVIMENTO E MANUTENÇÃO DE SISTEMAS) Um firewall Linux pode ser implementado por meio de um servidor proxy. Nesse caso, as devidas autorizações do usuário e as demais opções de configuração são conferidas em uma tabela.

Correto.

(CESPE – 2010 – ABIN – OFICIAL TÉCNICO DE INTELIGÊNCIA – ÁREA DE DESENVOLVIMENTO E MANUTENÇÃO DE SISTEMAS) Um firewall Linux pode ser implementado por meio de um servidor proxy. Nesse caso, as devidas autorizações do usuário e as demais opções de configuração são conferidas em uma tabela.

Correto.

(ESAF – 2004 – CGU – Analista de Finanças e Controle – Área – Tecnologia da Informação – Prova 3) Analise as seguintes afirmações relativas a tipos e configuração de Firewall:

Letra “A”. O item III está errado pelo fato de um firewall host dual-homed ser composto por duas ou mais interfaces de rede. Um computador que fica entre duas redes pode ser um dual-homed gateway, já que este pode atuar como um roteador entre as redes. Mas no caso de um firewall deste caso, esta função de roteamento é desabilitada. Desta forma, os pacotes IP vindos da Internet não são repassados diretamente para a rede interna. Sistemas dentro dofirewall podem se comunicar com o dual-homed host, e sistemas fora do firewall podem somente se comunicar com o dual-homed host.

Já no item IV, não podemos afirmar que a segurança está perto do ideal somente com o endereço de origem, pois ele pode ser burlado com IP Spoofing, por exemplo.

(CESGRANRIO – 2005 – MPE-RO – Analista de Redes e Comunicação de Dados) Qual das funções abaixo um firewall NÃO realiza em uma rede?

Letra “E”. Tratar códigos maliciosos é função do anti-vírus.

Sou bacharel em Sistemas de Informação pela Estácio de Sá (Alagoas), especialista em Gestão Estratégica da Tecnologia da Informação pela Univ. Gama Filho (UGF) e pós-graduando em Gestão da Segurança da Informação pela Univ. do Sul de Santa Catarina (UNISUL). Certificações que possuo: EC-Council CEH, CompTIA (Security+, CySA+ e Pentest+), EXIN (EHF e ISO 27001), MCSO, MCRM, ITIL v3. Tenho interesse por todas as áreas da informática, mas em especial em Gestão e Governança de TI, Segurança da Informação e Ethical Hacking.

One Response to “Conceito de Filtragem de Pacotes e Firewall”

  1. Guillermo disse:

    Muito bem Diego ! Tive que fazer uma consulta sobre segurança da informação, e tue blog foi de muita ajuda. Abs!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *