| Linha 102: | Linha 102: | ||
= Benefícios = | = Benefícios = | ||
<br> | <br> | ||
Filtragem de pacotes (packet filtering); | |||
*Baixo overhead/alto desempenho da rede. | |||
*É barato, simples e flexível. | |||
*É bom para o gerenciamento de tráfego. | |||
*É transparente para o usuário. | |||
Firewall de aplicação ou proxy de serviços (proxy services); | |||
*Não permite conexões diretas entre hosts internos e hosts externos. | |||
*Aceita autenticação do usuário. | |||
*Analisa comandos da aplicação no payload dos pacotes de dados, ao contrário do filtro de pacotes. | |||
*Permite criar logs do tráfego e de atividades específicas. | |||
Inspeção de estados (stateful inspection); | |||
*Aberturas apenas temporárias no perímetro da rede. | |||
*Baixo overhead/alto desempenho da rede. | |||
*Aceita quase todos os tipos de serviços. | |||
= Desvantagens = | = Desvantagens = | ||
<br> | <br> | ||
Edição das 15h13min de 25 de abril de 2016
Esta pesquisa deve fornecer um conteúdo atualizado sobre o tema acima. Não esqueça de incluir as referëncias (fontes) no último item, reforçando que não deve ser um Copy/Paste e sim uma síntese das pesquisas que fizer.
Conceito
Firewall é um software ou um hardware que verifica informações provenientes da Internet ou de uma rede, e as bloqueia ou permite que elas cheguem ao seu computador, dependendo das configurações do firewall.
Um firewall pode ajudar a impedir que hackers ou softwares mal-intencionados (como worms) obtenham acesso ao seu computador através de uma rede ou da Internet. Um firewall também pode ajudar a impedir o computador de enviar software mal-intencionado para outros computadores.
Outros conceitos importantes
- Filtros: Os filtros realizam o roteamento de pacotes de maneira seletiva, ou seja, aceitam ou descartam pacotes por meio da análise das informações de seus cabeçalhos. Essa decisão é tomada de acordo com as regras de filtragem definidas na política de segurança da organização. Os filtros podem, além de analisar os pacotes comparando um conjunto de regras de filtragem estáticas com as informações dos cabeçalhos dos mesmos, tomar decisões com base nos estados das conexões.
- Proxies: Os proxies são sistemas que atuam como um gateway entre duas redes, permitindo as requisições dos usuários internos e as respostas dessas requisições, de acordo com a política de segurança definida. Eles podem atuar simplesmente como um relay, podendo também realizar uma filtragem mais apurada dos pacotes, por atuar na camada de aplicação do modelo International Organization for Standadization/Open Systems Interconnection (ISO/OSI).
- Bastion Hosts: Os bastion hosts são os equipamentos em que são instalados os serviços a serem oferecidos para a Internet. Como estão em contato direto com as conexões externas, os bastion hosts devem ser protegidos da melhor maneira possível. Essa máxima proteção possível significa que o bastion host deve executar apenas os serviços e aplicações essenciais, bem como executar sempre a última versão desses serviços e aplicações, sempre com os patches de segurança instalados imediatamente após sua criação.
- Zona desmilitarizada: A zona desmilitarizada (DeMilitarized Zone — DMZ), ou perimeter network, é uma rede que fica entre a rede interna, que deve ser protegida, e a rede externa. Essa segmentação faz com que, caso algum equipamento dessa rede desmilitarizada (um bastion host) seja comprometido, a rede interna continue intacta e segura.
Arquitetura
Dual-Homed host architecture
É a arquitetura formada por um equipamento que tem duas interfaces de rede e funciona como um separador entre as duas redes. Os sistemas internos têm de ser conectados ao firewall para que possam se comunicar com os servidores externos e vice-versa, mas nunca diretamente. Assim, as comunicações são realizadas por meio de proxies ou conexões em duas etapas, nas quais o usuário se conecta primeiramente ao host dual-homed, para depois se conectar ao servidor externo. Essa última abordagem causa problemas, principalmente para o usuário, pois o processo de acesso externo não é transparente, o que acaba influindo na produtividade dos usuários. A desvantagem mais expressiva, por sua vez, é que qualquer problema com o dual-homed - uma invasão, por exemplo - pode pôr em risco a segurança da rede ou mesmo paralisar o tráfego. Por esta razão, o seu uso pode não ser adequado em redes cujo acesso à internet é essencial.
Screened host architecture
Essa arquitetura é formada por um filtro de pacotes e um bastion host. O filtro deve ter regras que permitam o tráfego para a rede interna somente por meio do bastion host, de modo que os usuários externos que queiram acessar um sistema da rede interna devem, primeiramente, se conectar ao bastion host. O bastion host pode funcionar também como um proxy, exigindo, assim, que os usuários internos acessem a Internet por meio dele. Outra possibilidade é a de usuários internos acessarem serviços externos por meio de regras no filtro de pacotes do bastion host. Essas duas possibilidades também podem ser mescladas, resultando no firewall híbrido. Perceba então que se trata de uma camada extra de segurança: a comunicação ocorre no sentido rede interna - bastion host - screening router - rede externa e vice-versa. Caso o bastion host ofereça serviços para a Internet, como um servidor Web, o filtro de pacotes deve permitir o acesso a ele somente na porta TCP correspondente, que é a porta 80, no caso do HTTP. Um problema que pode ocorrer nessa arquitetura é que, se o bastion host for comprometido, o invasor já estará dentro da rede interna da organização. Outro problema é que o filtro de pacotes e o bastion host formam um único ponto de falha, de modo que, se ele for atacado, a comunicação da organização com a Internet ficará comprometida e a rede interna ficará à mercê do invasor.
Screened Subnet architecture
Essa arquitetura aumenta o nível de segurança com relação à arquitetura screened host ao adicionar a rede DMZ (Demilitarized Zone - Zona Desmilitarizada). Se, antes, um ataque ao bastion host significava que o invasor já estaria com a rede interna disponível para ele, isso não ocorre na arquitetura screened subnet. O bastion host fica na DMZ, que é uma zona de confinamento entre a rede externa e a rede interna, que fica entre dois filtros. A DMZ evita que um ataque ao bastion host resulte, por exemplo, na utilização de um sniffer para a captura de pacotes de usuários internos. Um ponto importante da arquitetura é a definição dos filtros internos e externos. Note que esta arquitetura se mostra bastante segura, uma vez que, caso o invasor passe pelo primeiro roteador, terá ainda que lidar com a zona desmilitarizada. Esta inclusive pode ser configurada de diversas formas, com a implementação de proxies ou com a adição de mais bastion hosts para lidar com requisições específicas, por exemplo. Qualquer falha em sua definição ou implementação pode resultar em uma falsa sensação de segurança. O filtro externo deve permitir o tráfego dos serviços disponíveis na DMZ, bem como o tráfego das requisições dos usuários internos. Já o filtro interno deve permitir somente a passagem das requisições e respostas dos serviços permitidos para os usuários internos. Permitir o tráfego do bastion host para a rede interna poderia comprometer a segurança da rede interna, caso ele seja atacado, além de ser desnecessário. Uma variação muito comum dessa arquitetura é a utilização de um equipamento com três interfaces de rede, uma para a rede externa, outra para a rede interna e a terceira para a rede DMZ . Os filtros funcionariam em cada interface, sendo, portanto, conceitualmente, uma arquitetura screened subnet. O nível segurança e a flexibilidade de configuração fazem da Screened Subnet uma arquitetura normalmente mais complexa e, consequentemente, mais cara.
Firewall cooperativo
O firewall cooperativo é uma arquitetura em que são inseridos novos componentes, como a VPN, o IDS e a PKI. As três arquiteturas clássicas tratam de questões importantes, e na arquitetura do firewall cooperativo, elas serão estendidas às situações encontradas em ambientes cooperativos. A utilização de proxies na arquitetura, por exemplo, vem sendo bem empregada nas organizações. Os firewalls internos também têm uma importância cada vez maior dentro das organizações, ao separar e filtrar as comunicações entre departamentos internos diferentes. No contexto dos ambientes cooperativos, essa importância é maior ainda, pois trabalhos colaborativos entre duas organizações diferentes, por exemplo, podem requerer uma arquitetura mais bem elaborada, caracterizada pelo ‘muro’ cada vez mais complexo que deve proteger a organização. Os bolsões de segurança mostram de forma clara a situação encontrada no exemplo dos trabalhos colaborativos.
Tipos
Dependendo do tipo de conexão usada no computador, é possível usar dois tipos de firewall, um por hardware e/ou outro por software. Atualmente, os firewalls por hardware mais utilizados são os que já vêm incorporados aos roteadores e modems de banda larga. O Windows já vem com um firewall nativo, mas você pode desativá-lo e instalar ferramentas mais robustas, com mais opções de configuração e segurança.
A maior vantagem de usar um firewall por hardware é quando sua rede possui mais de um computador. Todas as máquinas estarão ligadas ao mesmo roteador, que além de gerenciar as conexões, também poderá executar a função de firewall — logicamente, isso dependerá do modelo de roteador utilizado.
No caso de redes com mais de um computador, você pode configurar o firewall do roteador com políticas de bloqueio ou liberação de portas, fazendo posteriormente um ajuste individual no software firewall de cada uma das máquinas da rede, de acordo com o perfil do usuário que as utilizará.
Classificação
Filtragem de pacotes (packet filtering)
As primeiras soluções de firewall surgiram na década de 1980 baseando-se em filtragem de pacotes de dados (packet filtering), uma metodologia mais simples e, por isso, mais limitada, embora ofereça um nível de segurança significativo.
Para compreender, é importante saber que cada pacote possui um cabeçalho com diversas informações a seu respeito, como endereço IP de origem, endereço IP do destino, tipo de serviço, tamanho, entre outros. O Firewall então analisa estas informações de acordo com as regras estabelecidas para liberar ou não o pacote (seja para sair ou para entrar na máquina/rede), podendo também executar alguma tarefa relacionada, como registrar o acesso (ou tentativa de) em um arquivo de log.
A transmissão dos dados é feita com base no padrão TCP/IP (Transmission Control Protocol/Internet Protocol), que é organizado em camadas. A filtragem normalmente se limita às camadas de rede e de transporte: a primeira é onde ocorre o endereçamento dos equipamentos que fazem parte da rede e processos de roteamento, por exemplo; a segunda é onde estão os protocolos que permitem o tráfego de dados, como o TCP e o UDP (User Datagram Protocol).
Com base nisso, um firewall de filtragem pode ter, por exemplo, uma regra que permita todo o tráfego da rede local que utilize a porta UDP 123, assim como ter uma política que bloqueia qualquer acesso da rede local por meio da porta TCP 25.
Filtragens estática e dinâmica
É possível encontrar dois tipos de firewall de filtragem de pacotes. O primeiro utiliza o que é conhecido como filtros estáticos, enquanto que o segundo é um pouco mais evoluído, utilizando filtros dinâmicos.
Na filtragem estática, os dados são bloqueados ou liberados meramente com base nas regras, não importando a ligação que cada pacote tem com outro. A princípio, esta abordagem não é um problema, mas determinados serviços ou aplicativos podem depender de respostas ou requisições específicas para iniciar e manter a transmissão. É possível então que os filtros contenham regras que permitem o tráfego destes serviços, mas ao mesmo tempo bloqueiem as respostas/requisições necessárias, impedindo a execução da tarefa.
Esta situação é capaz de ocasionar um sério enfraquecimento da segurança, uma vez que um administrador poderia se ver obrigado a criar regras menos rígidas para evitar que os serviços sejam impedidos de trabalhar, aumentando os riscos de o firewall não filtrar pacotes que deveriam ser, de fato, bloqueados.
A filtragem dinâmica surgiu para superar as limitações dos filtros estáticos. Nesta categoria, os filtros consideram o contexto em que os pacotes estão inseridos para "criar" regras que se adaptam ao cenário, permitindo que determinados pacotes trafeguem, mas somente quando necessário e durante o período correspondente. Desta forma, as chances de respostas de serviços serem barradas, por exemplo, cai consideravelmente.
Firewall de aplicação ou proxy de serviços (proxy services)
O firewall de aplicação, também conhecido como proxy de serviços (proxy services) ou apenas proxy é uma solução de segurança que atua como intermediário entre um computador ou uma rede interna e outra rede, externa - normalmente, a internet. Geralmente instalados em servidores potentes por precisarem lidar com um grande número de solicitações, firewalls deste tipo são opções interessantes de segurança porque não permitem a comunicação direta entre origem e destino.
Perceba que todo o fluxo de dados necessita passar pelo proxy. Desta forma, é possível, por exemplo, estabelecer regras que impeçam o acesso de determinados endereços externos, assim como que proíbam a comunicação entre computadores internos e determinados serviços remotos.
Este controle amplo também possibilita o uso do proxy para tarefas complementares: o equipamento pode registrar o tráfego de dados em um arquivo de log; conteúdo muito utilizado pode ser guardado em uma espécie de cache (uma página Web muito acessada fica guardada temporariamente no proxy, fazendo com que não seja necessário requisitá-la no endereço original a todo instante, por exemplo); determinados recursos podem ser liberados apenas mediante autenticação do usuário; entre outros.
A implementação de um proxy não é tarefa fácil, haja visto a enorme quantidade de serviços e protocolos existentes na internet, fazendo com que, dependendo das circunstâncias, este tipo de firewall não consiga ou exija muito trabalho de configuração para bloquear ou autorizar determinados acessos.
Proxy transparente
No que diz respeito a limitações, é conveniente mencionar uma solução chamada de proxy transparente. O proxy "tradicional", não raramente, exige que determinadas configurações sejam feitas nas ferramentas que utilizam a rede (por exemplo, um navegador de internet) para que a comunicação aconteça sem erros. O problema é, dependendo da aplicação, este trabalho de ajuste pode ser inviável ou custoso.
O proxy transparente surge como uma alternativa para estes casos porque as máquinas que fazem parte da rede não precisam saber de sua existência, dispensando qualquer configuração específica. Todo acesso é feito normalmente do cliente para a rede externa e vice-versa, mas o proxy transparente consegue interceptá-lo e responder adequadamente, como se a comunicação, de fato, fosse direta.
É válido ressaltar que o proxy transparente também tem lá suas desvantagens, por exemplo: um proxy "normal" é capaz de barrar uma atividade maliciosa, como um malware enviando dados de uma máquina para a internet; o proxy transparente, por sua vez, pode não bloquear este tráfego. Não é difícil entender: para conseguir se comunicar externamente, o malware teria que ser configurado para usar o proxy "normal" e isso geralmente não acontece; no proxy transparente não há esta limitação, portanto, o acesso aconteceria normalmente.
Inspeção de estados (stateful inspection);
Tido por alguns especialistas no assunto como uma evolução dos filtros dinâmicos, os firewalls de inspeção de estado (stateful inspection) trabalham fazendo uma espécie de comparação entre o que está acontecendo e o que é esperado para acontecer.
Para tanto, firewalls de inspeção analisam todo o tráfego de dados para encontrar estados, isto é, padrões aceitáveis por suas regras e que, a princípio, serão usados para manter a comunicação. Estas informações são então mantidas pelo firewall e usadas como parâmetro para o tráfego subsequente.
Para entender melhor, suponha que um aplicativo iniciou um acesso para transferência de arquivos entre um cliente e um servidor. Os pacotes de dados iniciais informam quais portas TCP serão usadas para esta tarefas. Se de repente o tráfego começar a fluir por uma porta não mencionada, o firewall pode então detectar esta ocorrência como uma anormalidade e efetuar o bloqueio.
Softwares
Abaixo estão listados alguns dos softwares mais utilizados:
- Norton 360;
- Privatefirewall;
- Firewall do Windows;
- Comodo Firewall;
- Zone Alarm Firewall;
Benefícios
Filtragem de pacotes (packet filtering);
- Baixo overhead/alto desempenho da rede.
- É barato, simples e flexível.
- É bom para o gerenciamento de tráfego.
- É transparente para o usuário.
Firewall de aplicação ou proxy de serviços (proxy services);
- Não permite conexões diretas entre hosts internos e hosts externos.
- Aceita autenticação do usuário.
- Analisa comandos da aplicação no payload dos pacotes de dados, ao contrário do filtro de pacotes.
- Permite criar logs do tráfego e de atividades específicas.
Inspeção de estados (stateful inspection);
- Aberturas apenas temporárias no perímetro da rede.
- Baixo overhead/alto desempenho da rede.
- Aceita quase todos os tipos de serviços.
Desvantagens